首页 > 解决方案 > 如何在 Wagtail 中为页面模型编写自定义视图?

问题描述

我有一个页面对象,如下所示models.py

class PostPage(Page):
    template = 'Blog/post_page.html'
    # Database fields
    body = RichTextField()
    main_image = models.ForeignKey(
        'wagtailimages.Image',
        null=True,
        blank=True,
        on_delete=models.SET_NULL,
        related_name='+'
    )

    promote_panels = [
        InlinePanel('related_links', label="Related links"),
        MultiFieldPanel(Page.promote_panels, "Common page configuration"),
    ]
    ....

我想将此页面与另一个视图混合在一起,如下所示views.py

class PostPageView(PermissionMixin, PostPage):
    required_permission = 'special_user'

django-role-permissions或或的一些看法generic-views

我怎样才能做到这一点?将它们混合在一起后,我如何解释上下文处理器使用PostPageView而不是PostPage

另一个问题是如何设置 Page 对象的视图?我在 Wagtail 管理员中找到了这个,但我找不到任何.CreateViewEditViewDetailView

标签: python-3.xdjangowagtail

解决方案


推荐阅读