【问题标题】:FieldPanel failed to be reflected on content_panelsFieldPanel 未能反映在 content_panels
【发布时间】:2021-07-12 09:18:45
【问题描述】:

我正在将 wagtail 集成到我现有的 Django 项目中。 整合前:文件架构如下

|- 我的项目/
__|- 模板/
__|- 管理.py
__|- 我的项目/
____|- urls.py
____|- 模型.py
____|- settings.py
____|-views.py

在我安装 wagtail 包并在settings.py 上反映后,文件架构没有改变。现在我可以成功登录localhost/cms/了。

现在我想自定义 CMS 管理员的content_panel,因此我在下面定义了类;

# MyProject/models.py

class HomePage(Page):
    template = "homepage.html"
    content = RichTextField()
    content_panels = Page.content_panels + [
        FieldPanel("content")
    ]

然后我迁移数据库并重新启动 Web 服务器,但在 CMS 管理门户的 content_panels 上没有看到任何变化。为什么?

【问题讨论】:

    标签: wagtail wagtail-admin


    【解决方案1】:

    https://docs.wagtail.io/en/stable/getting_started/integrating_into_django.html#start-developing 所述 - 当您将 Wagtail 集成到现有项目中时(而不是使用 wagtail start 项目模板),创建的初始主页将是基本的 Page 类型,没有内容字段。在你定义了一个真正的HomePage 类之后,你需要删除初始页面并在其位置创建一个主页类型的页面(同时在设置 -> 站点下创建一个站点记录)。

    【讨论】:

    • 感谢您的回复,我清楚地记得我至少查看了 3 次此声明(替换为我自己的 HomePage 类并设置指向 HomePage 的站点)。但我什么也没做,因为我根本不明白。您能否详细说明一下(为什么和如何)?
    猜你喜欢
    • 2017-07-10
    • 2011-11-23
    • 1970-01-01
    • 2016-04-05
    • 2021-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-27
    相关资源
    最近更新 更多