代码之家  ›  专栏  ›  技术社区  ›  porton

在何处清除未使用的字段:在模型中还是在表单中?

  •  0
  • porton  · 技术社区  · 8 年前

    我应该在哪里清除未使用的数据字段(例如set organization_name 如果 Contract 模型与组织无关,但是个人合同)?

    我应该在模型中还是在表单/模型中进行?

    我想清除未使用的数据字段,以便于比较两个模型实例的相等性(以便擦除的字段总是比较相等)。

    我应该重写哪个方法来清除其中未使用的数据?我应该重写吗 Model.save() 方法

    1 回复  |  直到 8 年前
        1
  •  1
  •   GwynBleidD    8 年前

    这取决于你的预期行为,这是你的选择。

    例如,如果您想保留创建实例的能力,那么 organization_name 设置为非空字符串,尽管它是从控制台或其他接口手动生成的个人合同,将该逻辑放入 Model.save() 方法将防止出现这种情况。

    但如果你想避免这种情况, 模型保存() 是最好的地方。但不要完全依赖于它,它总是有可能进入数据库,除非您在数据库级别检查它。