我有在鶺鴒一個ContentPage
模型和其他ContentPage
模型鏈接到一個ContentPage
模型RelatedPost
有點像這樣:測試中鶺鴒相關頁面
class ContentPage(Page):
summary = RichTextField(blank=True)
body = RichTextField(blank=True)
published = models.DateTimeField(default=timezone.now())
content_panels = Page.content_panels + [
FieldPanel('summary'),
FieldPanel('body', classname="full"),
InlinePanel('related_page', label="Related Content"),
]
settings_panels = Page.settings_panels + [
FieldPanel('published'),
]
class RelatedPost(Orderable):
post = ParentalKey(
'ContentPage',
related_name='related_page'
)
page = models.ForeignKey(
'ContentPage',
null=True,
blank=True,
on_delete=models.SET_NULL,
related_name="+"
)
panels = [
FieldPanel('page')
]
當我運行這個測試:
class ContentPageTests(WagtailPageTests):
def test_can_create_article_page(self):
self.assertCanCreateAt(ContentIndexPage, ContentPage)
# content_index is just a parent page
content_index = self.create_content_index_page()
self.assertCanCreate(content_index, ContentPage, {
'title': 'Test Article',
'published': datetime.datetime.now()
})
我得到一個錯誤說:
django.core.exceptions.ValidationError: ['ManagementForm data is missing or has been tampered with']
管理工作正常。我可以保存相關頁面等,當我註釋掉InlinePanel線時,它工作正常。
的問題不在於觀點或模型,但在窗體或formset的設置,所以你需要發佈形式.py文件和您的視圖,從中獲取表單。 –