试图在更新Profile模型时执行一些代码,但似乎print方法从不显示,因此永远不会调用save方法。
C3
models.py
Profile.objects.filter(user__id=1).update(field_a='test')
答案 0 :(得分:0)
否,不调用save方法。参见the docs on update()
:
最后,认识到
update()
在SQL级别进行了更新,因此,不会在模型上调用任何save()
方法,也不会发出pre_save
或{{ 1}}信号(这是调用post_save
的结果)。如果要为具有自定义Model.save()
方法的模型更新一堆记录,请遍历它们并调用save()
,如下所示:save()