4

假设我有这样的模型:

class Spam(models.Model):
    a = models.IntegerField()
    b = models.IntegerField()

在管理员创建/编辑表单上。我想添加一个不可编辑的字段“c”,它将包含在 a 和 b 中输入的内容的总和。

我对如何实现这一点有很多想法,但没有一个听起来很好。

谁能指出我正确的方向?

4

1 回答 1

23

你可以这样做ModelAdmin.readonly_fields

class SpamAdmin(admin.ModelAdmin):
    readonly_fields = ('get_c',)
    fields = ('a', 'b', 'get_c')

    def get_c(self, obj):
        return obj.a + obj.b
于 2013-01-11T21:51:33.667 回答