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

问题描述 投票:0回答:1

我正在建立一个网站,在该网站上应该有指向首页上特定页面的链接。我正在使用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 %}
wagtail
1个回答
0
投票

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

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

© www.soinside.com 2019 - 2024. All rights reserved.