我有一个名为 Client 的模型,它具有 3 个属性:姓名、电话和电子邮件。 在开始时,我有一个带有一些值的 Client 实例:Mark、+54261334455 和 fake@client.com。然后我将这些值更改为:Peter,+54261444444,another@mail.com,但我需要保留旧值。我怎样才能做到这一点?
我的选择:
- 创建 old_attr 列:name、phone、email、old_name、old_phone 和 old_email。我认为这是一个丑陋的解决方案......
- 使用serialize保留仅具有额外字段的旧数据:姓名、电话、电子邮件和数据。我认为这不是一个好主意,因为您需要多次操作旧数据。
- 创建 2 个客户端实例。一个带有旧数据,另一个带有新数据,向客户端模型添加了一个额外的字段来关联这些对象。我认为这是更好的解决方案,但由于将“一个客户”一分为二,我需要增加很多逻辑
更好的想法来做到这一点?