gpt4 book ai didi

python - 在 Wagtail 的代码片段中使用 StreamField

转载 作者:太空狗 更新时间:2023-10-29 22:18:23 25 4
gpt4 key购买 nike

我正在尝试在我的 Wagtail 网站上构建一些结构化摘要。我浏览了 documentation , 但在这一点上什么也没看到(如果我错过了,请原谅我)。

是否可以在 Snippet 中使用 StreamField?或者,仅在页面上

最佳答案

是的,您绝对可以将 Streamfield 添加到片段中。它的工作原理与在 Wagtail Page 子类上使用它一样。这是一个使用示例:

from wagtail.core.fields import StreamField
from wagtail.wagtailsnippets.models import register_snippet
from wagtail.wagtailadmin.edit_handlers import StreamFieldPanel

@register_snippet
class Contact(models.Model):
contact_info = StreamField([
('email', MyBlocks.ContactEmail()),
('phone', MyBlocks.ContactPhone()),
('address', MyBlocks.ContactAddress()),
])

panels = [StreamFieldPanel('contact_info')]

您没有要求的额外内容: Streamfield 是一个 Django 模型字段,因此它在您定义它的任何模型上都一样工作。实际上,Streamfield 只是保存为 JSON 字符串。唯一让它与众不同的是积木。 Streamfield 的第一个参数中定义的 block 实际上只是定义 Streamfield 可用于生成内容的可用选项。这些 block 本身与 CRUD 操作的 SQL 无关,它们仅用于操作为 Streamfield 保存的数据。

希望对您有所帮助。

关于python - 在 Wagtail 的代码片段中使用 StreamField,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37051055/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com