The*_*ter 6 python django wagtail wagtail-streamfield wagtail-snippet
我正在尝试在我的Wagtail网站上构建一些结构化代码片段.我查看了文档,但在这一点上什么都看不到(如果我错过了,请原谅我).
是否可以StreamField在代码段内使用?或者,仅限于Pages
404*_*404 10
是的,您绝对可以将Streamfield添加到代码段中.它的工作原理与在Wagtail Page子类上使用它的方式相同.以下是它的一个使用示例:
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')]
Run Code Online (Sandbox Code Playgroud)
您没有要求的额外内容: Streamfield是一个Django模型字段,因此它在您定义的任何模型上的工作方式相同.实际上,Streamfield只是保存为JSON字符串.唯一让它与众不同的是块.在Streamfield的第一个参数中定义的块实际上只是定义了Streamfield可用于生成内容的可用选项.这些块本身与用于CRUD操作的SQL无关,它们仅用于操作为Streamfield保存的数据.
希望有所帮助.
| 归档时间: |
|
| 查看次数: |
763 次 |
| 最近记录: |