在下面的模型中,我想完全不需要bottom_content
字段。我怎么能这样做?
class ServicePage(Page):
top_content = StreamField(default_blocks + [
('two_columns', TwoColumnBlock()),
('three_columns', ThreeColumnBlock()),
])
bottom_content = StreamField(default_blocks + [
('two_columns', TwoColumnBlock()),
('three_columns', ThreeColumnBlock()),
])
search_fields = Page.search_fields + [
index.SearchField('top_content'),
index.SearchField('bottom_content'),
]
content_panels = Page.content_panels + [
StreamFieldPanel('top_content'),
StreamFieldPanel('bottom_content'),
InlinePanel('service_package', label='Packages')
]
答案 0 :(得分:3)
StreamField还接受一个可选的关键字参数blank,默认为false;如果为false,则必须至少提供一个块才能使该字段有效。
自: - http://docs.wagtail.io/en/latest/topics/streamfield.html
答案 1 :(得分:0)
以下适用于我设置 blank=True
。 Rollingers 的答案是一个死链接,因此为需要它的任何人添加代码示例。
class BlogPage(Page):
body = StreamField([
('heading', blocks.CharBlock(form_classname="full title")),
('paragraph', blocks.RichTextBlock()),
('image', ImageChooserBlock()),
], blank=True)