0
我有四個型號的關係Django中保存前主模型StackedInline外國鍵控型號聯繫
Model PagetTemplate(models.Model):
pass
Model TextKey(models.Model):
page_template = models.ForeignKey(PageTemplate, related_name='text_keys')
Model Page(models.Model):
page_template = models.ForeignKey(Pagetemplate, related_name='pages')
Model Text(models.Model):
key = models.ForeignKey(TextKey, related_name='text_fields')
page = models.ForeignKey(Page, related_name='text_fields')
的關係是這樣的:
PageTemplate
/\
/\
/ \
TextKey Page
\ /
\/
\/
Text
在對頁面的驗證(在clean
方法),我檢查[page.page_template.text_keys中的鍵的鍵值]和[text_field.key for text_field in page.text_fields]
是否匹配,以便所有文本鍵都填充到我的文本中。我遇到的問題是在調用clean
時,page.text_fields
爲空。管理代碼看起來像。
class TextInline(admin.StackedInline):
model = Text
extra = 0
class PageAdmin(DebugModelAdmin):
inlines = [TextInline]
admin.site.register(Page, PageAdmin)
我在日誌類包裹admin.ModelAdmin
知道我有我需要的時候ModelAdmin.add_view
被調用,但這種壓倒一切正確的事情或者是有一些選項的信息/方法,這將是更好地重寫我丟了?