我有一个包含许多字段的模型。我只需要在更改两个特定字段时运行代码。我知道我可以修改我的模型的save()
方法,但我不知道如何检查ModelForm
中哪些字段已更改。
答案 0 :(得分:0)
很抱歉,因为我不能给你任何代码片段,因为我在Django不是很有经验,但是当我通过一个控制器类听完模型并听到变化来完成更改时,我会去获取信号。希望我可能会帮助一点。 祝你好运
答案 1 :(得分:0)
Django-model-utils有一个名为FieldTracker的东西就是这样做的。只需在模型中实例化它,并告诉它跟踪您正在寻找的特定字段。然后,您可以使用has_changed方法测试自上次保存以来给定字段是否已更改。
此软件包还有其他一些很棒的实用工具,我建议您浏览docs。
答案 2 :(得分:0)
您可以尝试django-dirtyfields。