练习目标

把旧 User 模型迁移到 Account / OrganizationMembership

历史原因

早期只有个人用户,所以 User 同时表示账号、人、学生、客户。
后来加入企业客户,临时加 companyId。
后来加入讲师,临时加 isInstructor。
后来加入订阅和企业分配,courseIds 变得含义不清。

迁移路线

理解历史
  -> 固定现有行为
  -> 引入 Account
  -> 引入 OrganizationMembership
  -> 双写
  -> 回填
  -> 切读
  -> 对账
  -> 废弃旧字段
  -> 删除旧路径

小结

不要嘲笑旧模型。它可能曾经合理,只是现在承载了超出原设计的历史重量。