无法覆盖模型save()

时间:2019-06-13 13:55:07

标签: django django-models

试图在更新Profile模型时执行一些代码,但似乎print方法从不显示,因此永远不会调用save方法。

C3

models.py

Profile.objects.filter(user__id=1).update(field_a='test')

1 个答案:

答案 0 :(得分:0)

否,不调用save方法。参见the docs on update()

  

最后,认识到update()在SQL级别进行了更新,因此,不会在模型上调用任何save()方法,也不会发出pre_save或{{ 1}}信号(这是调用post_save的结果)。如果要为具有自定义Model.save()方法的模型更新一堆记录,请遍历它们并调用save(),如下所示:

save()