所以可以说我为 Wagtail 设置了以下模型:
@register_snippet
class MySnippet(models.Model):
name = models.CharField(max_length=200, null=True)
panels = [FieldPanel('name'),]
def __str__(self):
return self.name
class Meta:
ordering = ['name',]
class MyPage(Page):
body = StreamField([
('mysnippet', SnippetChooserBlock(required=False, label='MySnippet', target_model='MySnippet')),
], blank=True, help_text='')
content_panels = Page.content_panels + [
StreamFieldPanel('body', heading='Stuff to add'),
]
我的客户将在MySnippet
他们进行时创建很多项目。移动到 CMS 中的另一个视图,创建一个MySnippet
,然后回到他们的主MyPage
编辑器来选择它,这将是非常尴尬的。
Q1 有没有一种简单的方法来添加一个SnippetChooseOrInlineCreate()
块,以便客户端可以在MySnippet
创建s 时添加新的MyPage
s?
Q2 如果没有现成的简单方法,你会如何建议接近这个?