2013-02-23 28 views
2

在我的項目(玩具版本)中,有業主擁有任意數量的對象。我models.py文件看起來像Django管理站點 - 列出ForeignKey項目作爲更改頁上的更改列表

class Owner(models.Model) 
    name = models.CharField(max_length=50) 
    date_of_birth = models.DateField() 

class Object(models.Model) 
    name = models.CharField(max_length=50) 
    price = models.models.DecimalField(max_digits=9, decimal_places=2) 
    owner = models.ForeignKey(Owner) 

我的問題涉及到更改頁面上的管理網站,例如一個Owner

http://mysite.com/admin/myapp/owner/1/. 

現在我知道,如果我註冊Object作爲TabularInlineStackedInline,然後我得到這個所有者擁有該對象的可編輯列表。然而,在我的項目的真實版本中,Object有25個字段,而不是2個,所以這兩個選項都不是美學上真正需要的。

我真正想要的是實質上有一個所有者擁有者出現在所有者的變更頁面上的所有對象的變更清單。 (這樣我可以得到所有者對象的精簡列表,如果需要編輯其中的詳細信息,我可以單擊它的鏈接並在其自己的頁面中進行編輯。)基本上我想要的內容是

http://mysite.com/admin/myapp/object/?owner__id__exact=1 

http://mysite.com/admin/myapp/owner/1/. 

出現是有辦法做到這一點? PS:我使用Django 1.4和Python 2.7。

回答

0

您可以使用these attributes來定義要在每個InlineModelAdmin中使用的類和/或字段的類型,並以這種方式限制每個對象的輸入字段數量。