1

我正在构建一个用于 StreamField 的新块类型。它被称为 FAQModule,它应该允许一个标题和 1 个或多个问题/答案对。

class FAQBlock(blocks.StructBlock):
    headline = blocks.TextBlock(help_text="Enter headline / question")
    text = blocks.TextBlock(help_text="Enter a description / answer ")

class FAQCardsWithListBlock(blocks.StructBlock):
    title = blocks.TextBlock(help_text="Enter FAQ title")
    questions = blocks.ListBlock(FAQBlock())

    class Meta:
        label = 'FAQ Block'
        icon = 'help'

它完全按预期工作,看起来像这样: 在此处输入图像描述

但是我想强制执行最小/最大数量的 Q/A 块。我看到 StreamBlock 允许这样做,但我的团队和我同意 ListBlock 实现的接口正是我们想要的。因此,我正在努力根据StreamBlock 实现中的内容为我们的功能添加最小/最大强制执行。我在提交时出错,但我无法让徽章显示在“内容”选项卡中,也无法让错误显示在块中。

有人对如何实现这一点有想法吗?

4

1 回答 1

0

我暂时没有使用 StreamBlock,但 InlinePanel 有最小/最大项目关系的参数。

http://docs.wagtail.io/en/v2.0/reference/pages/panels.html#inlinepanel

于 2019-10-06T12:07:56.280 回答