我定義了幾種模式:期刊,卷volume_scanInfo等Django的InlineModelAdmin:顯示部分內嵌模型,並鏈接到完整的模型
一本期刊可以有更多的容量和體積可以有更多的scanInfo。
我想要做的是:
-
在期刊的管理頁面
- 我想有卷內聯(完成)的列表
- 前面列表中的每個卷連接到其管理頁面在那裏我可以顯示錶單來編輯內容的「掃描信息」列表和內聯列表。
,所以我想有這樣的:
Journal #1 admin page
[name]
[publisher]
[url]
.....
list of volumes inline
[volume 10] [..(other fields)..] <a href="/link/to/volume/10">Full record</a>
[volume 20] [..(other fields)..] <a href="/link/to/volume/20">Full record</a>
然後
Volume #20 admin page
[volume number]
[..(other fields)...]
......
list of the scan info inline
[scan info 33] [..(other fields)..] <a href="/link/to/scaninfo/33">Full record</a>
[scan info 44] [..(other fields)..] <a href="/link/to/scaninfo/44">Full record</a>
我試圖做的是定義一個創建代碼模型方法,並嘗試使用它裏面的在管理員中定義「內聯卷」的類,但它不起作用。
換句話說
模型 「卷」 有着內在的東西,如:
def selflink(self):
return '<a href="/admin/journaldb/volume/%s/">Full record</a>' % self.vid
selflink.allow_tags = True
和
class VolumeInline(admin.TabularInline):
fields = ['volumenumber', 'selflink']
model = Volume
extra = 1
但是,這提供了以下錯誤:
Exception Value: 'VolumeInline.fields' refers to field 'selflink' that is missing from the form.
任何想法?
感謝, 喬瓦尼
非常好的問題。這種功能應該內置。 – 2011-11-09 07:53:41
iI內置。它在這裏回答(show_change_link)自django 1.8以來:http://stackoverflow.com/a/28170958/493272 – SpiRail 2016-05-19 21:48:46
我知道,但問題是6歲: - ) 我會更新答案,所以很明顯有這個新功能。 – 2016-05-20 13:33:25