Django 如何覆盖模型更新方法

Django 如何覆盖模型更新方法,django,django-models,Django,Django Models,我可以像这样简单地覆盖save-save方法 def save(self, *args, **kwargs): # Do something super(Goal, self).save(*args, **kwargs) # Do something else 为什么我不能用同样的方法覆盖更新方法?更新对象时,它不会运行任何自定义代码 def update(self, *args, **kwargs): # Do somethi

我可以像这样简单地覆盖save-save方法

def save(self, *args, **kwargs):
        # Do something
        super(Goal, self).save(*args, **kwargs)
        # Do something else

为什么我不能用同样的方法覆盖更新方法?更新对象时,它不会运行任何自定义代码

def update(self, *args, **kwargs):
        # Do something
        super(Goal, self).update(*args, **kwargs)
        # Do something else

保存方法是Django用于更新模型的方法。内置save()方法为Django模型提供了最常见的操作之一:保存(即创建或更新)

您可以覆盖Django queryset的更新方法

super(GoalQuerySet,self).update(*args, **kwargs)

模型也使用
save
方法更新,而不是使用
update
方法更新。