2009-07-01 121 views
2

我正在寫有這樣的(僞)遞歸關係中的應用:定義的Django模型關係

class atist: 
     name = charfield 
     (...) 

class press: 
     pub = foreingkey(artist) 

class works: 
     work = foreingkey(artist) 

class img: 
     im = foreingkey(works) 

我在想,如果這是更好的方法來解決這個問題,還是我會使用另一種類似許多很多的關係?另一方面,我如何才能在管理網站註冊這個應用程序,讓藝術家只有一個頁面,並將其作爲藝術家的內嵌對象?

感謝

+0

我一直在推薦Django文檔站點以供參考,但是我發現這樣的東西不清楚。這是一個很好的問題,我希望我知道答案。 – AlbertoPL 2009-07-01 20:23:13

回答

5

如果一個作品,IMG或按將只涉及到一個藝術家,那麼你並不需要一個多對多的,所以你有它安裝在你的僞代碼的方式應該足夠了。

您可以查看管理員的inline froms。您可以指定諸如要顯示的每種類型的內嵌項目的數量等。

class MyModelInline(admin.StackedInline): 
     model = MyModel 
     # whatever other options you need for your inline 

class MyModelAdmin(admin.ModelAdmin): 
     inlines = [MyModelInline,] 

類似的東西應該適合您。就像AlbertoPL說的那樣,文檔中有更多信息,包含您需要的所有不同選項和功能。