如何在主页上显示某些Wagtail页面?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在主页上显示某些Wagtail页面?相关的知识,希望对你有一定的参考价值。

我正在建立一个网站,在该网站上应该有指向首页上特定页面的链接。我正在使用PageChooserPanel执行此操作,但是无法显示某些页面。这是我的代码:

models.py

class HomePage(Page):

FeaturedPageTitle = models.CharField(
        null=True,
        blank=True,
        max_length=255,
    )
FeaturedPage = models.ForeignKey(
        'wagtailcore.Page',
        null=True,
        blank=True,
        on_delete=models.SET_NULL,
    )

content_panels = Page.content_panels + [
        MultiFieldPanel([
            MultiFieldPanel([
                FieldPanel('FeaturedPageTitle'),
                PageChooserPanel('FeaturedPage'),
            ]),
        ], 
    ]
    def pages(self):
        pages = StandardPage.objects.all()
        return pages

class StandardPage(Page)

home_page.html

% if page.featured_page %
 page.featured_page_title 
% for page in page.pages %
% image page.image %
page.title
% endfor %
% endif %
答案

您已经将特色页面字段称为FeaturedPageTitle / FeaturedPage,但是在模板上使用了featured_page_title / featured_page

在Python中,变量名中的大写字母/标点符号很重要-通常的惯例是仅对类名使用大写(CamelCase),对其他变量使用underscore_case

以上是关于如何在主页上显示某些Wagtail页面?的主要内容,如果未能解决你的问题,请参考以下文章

如何在某些页面上禁用 Sidemenu Ionic 2

Wagtail:序列化页面模型

在 Wagtail 页面上禁用 CSRF 验证

Wagtail:如何在管理员中设置计算字段(@property)标题

Wagtail - 在页面上呈现带有相关片段和标签的数据时遇到问题

Django Wagtail - 如何设置日期格式?