在django-admin中调用模型函数

时间:2014-03-21 16:06:25

标签: django django-models django-admin

有没有我可以在admin.py中调用模型函数的方法,例如假设我有一个模型说

class A(models.Model):
    first = models.IntegerField()
    second = models.IntegerField()
    total = models.IntegerField()

    def Total_amount(self):
        self.total+=first
        self.total+=second

现在我想要的是每当我从管理员那里做第一件事和第二件事时它自动必须反映总价值。我怎么能这样做我的意思是我可以在ModelAdmin类中做点什么但它不能从我的工作侧。

1 个答案:

答案 0 :(得分:1)

在管理员中保存模型时,它会在模型​​的实例上调用full_clean方法。我建议你覆盖该模型上的clean()方法以获得你想要的行为,例如:

def clean(self):
    super(MyModel, self).clean()
    self.Total_amount()