4

次のようなモデルがあるとします。

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

管理者作成/編集フォーム。aとbに入力されたものの合計を含む、編集不可能なフィールド「c」を追加したいと思います。

これを達成するためのアイデアはたくさんありますが、どれもあまり良いとは言えません。

誰かが私を正しい方向に向けることができますか?

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 に答える