我正在创建一些自定义验证,在保存时检查某些字段值是否已更改。
在POST
上,view
中是否有一种方法可以检查该格式集的哪些字段已更改?
我正在循环遍历formset并且能够查看单个字段值,因此我可以将它们与查询进行比较。考虑到如果没有任何改变,formset不会通过保存过程,它似乎有点不必要。
感谢任何帮助。
答案 0 :(得分:0)
向formset添加方法:
def has_changed()
return all([form.has_changed() for form in self.forms])
同样,表单还记录了changed_fields,您可以在formset中连接它们。
我认为formset.save()
不会盲目地覆盖数据库中的所有条目。它会检查更改的表单,我认为这些表单在formset.changed_forms
中可用,它只更新数据库中的那些行。