2013-01-11 28 views
1

說我已經有了一個模型,如下所示:添加客戶端計算領域的Django管理

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

在管理員創建/編輯表單。我想添加一個不可編輯的字段「c」,它將包含在a和b中輸入的任何內容的總和。

我有一堆關於如何完成這個任務的想法,而且沒有一個聽起來很好。

任何人都可以指向正確的方向嗎?

回答

10

您可以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 
+0

這不是客戶端計算 – Arthur

+0

是做到這一點,我需要一個客戶端解決方案。 – danatron

+0

在這種情況下,我不理解你的問題。這將是三行的Javascript。你究竟在哪裏遇到問題? –