2017-05-23 11 views
0

您好我是W new新手,想知道是否有一种简单的方法将多个下载添加到单个页面类型。我创建了一个自定义页面类型,并希望能够添加多个文档/下载。我已经设法得到一个显示,但可以找到没有办法扩大这种扩大,以增加许多。多文档上传到W Page页

downloads = models.ForeignKey('wagtaildocs.Document', null=True, on_delete=models.SET_NULL) 

content_panels = Page.content_panels + [ 
    DocumentChooserPanel('downloads'), 

回答

1

您可以与您的页面模型相关联的子模型做到这一点,通过ParentalKeyInlinePanel。在http://docs.wagtail.io/en/v1.10.1/getting_started/tutorial.html#images本教程给出了这样一个例子 - 你的设置非常相似,唯一的区别是,你要链接的文档的页面,而不是图片:

class MyPage(Page): 
    ... 
    content_panels = Page.content_panels + [ 
     InlinePanel('documents', label="Documents") 
    ] 

class MyPageDocumentLink(Orderable): 
    page = ParentalKey(MyPage, related_name='documents') 
    document = models.ForeignKey(
     'wagtaildocs.Document', on_delete=models.CASCADE, related_name='+' 
    ) 

    panels = [ 
     DocumentChooserPanel('document'), 
    ] 
+0

辉煌 - 就像一个魅力,谢谢非常。我不确定是否有足够的代表接受,尽管:(。 – nmcilree

+0

很高兴它的工作原理(我敢肯定在你自己的问题上接受答案总是可以的,无论代表如何...) – gasman

+0

啊 - 我们走了,我认为会有一个大的“接受”按钮,而不是滴答声。 – nmcilree