我试图推翻我的一个模型的保存方法。在这个保存方法中,我想使用另一种模式方法,例如:
class MyModel(models.Model):
name = models.CharField(max_length=255)
def do_something(self):
pass
def save(self,*args, **kwargs):
self.do_something()
super(MyModel, self).save(*args, **kwargs)
这不起作用, 因为当 Django 执行保存时, 对象是一个通用的 ModelBase 类, 而不是我的 ModeBase 子类 。 因此我理解 :
unbound method do_something() must be called with MyModel instance as first argument (got ModelBase instance instead)
这样做的正确方式是什么?