重构 将现有的 model 的 pk 从 bigint 的 id 变为 uuid, 是放在 migration 还是 task 中比较好.

zengfengbo · 2017年11月29日 · 1820 次阅读

步骤如下

  1. 找到对应的model(M), 添加uuid字段, 生成uuid(Uniq).
  2. 找到以M.id为外键的其他model(FM)所有字段, 添加对应的对应的m_uuid(Uniq).
  3. 根据之前的FK关系, 同步m_uuid = uuid.
  4. 解除之前按id建立的外键依赖, 添加uuid之间的外键依赖.
  5. 重命名, id->id2, 所有m_id->m_id2, uuid->id, 所有m_uuid->m_id.
  6. 可选, 删除id2, 和m_id2.
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册