我正在按照 Wagtail 文档创建导航,但建议基于“片段”使用,所以我想更改侧边栏以显示“导航”或“菜单”而不是“片段”,这可能吗?
但是当我像文档建议的那样使用侧边栏更改时:
sidebar_content_panels = [
SnippetChooserPanel('advert', Advert),
InlinePanel('related_links', label="Related links"),
]
该sidebar_content_panels
代码与此处无关 - 它演示了如何在页面编辑器中添加一个额外的选项卡,如果您的页面包含您想要分开的“主要内容”和“侧边栏内容”。这与 Wagtail 管理员中的侧边栏菜单无关。
register_admin_menu_item
可以使用钩子(http://docs.wagtail.io/en/v1.0/reference/hooks.html#register-admin-menu-item )向管理菜单添加新项目,但这不是支持编辑现有项目,因此无法更改“片段”菜单的标签。但是,您可以查看“wagtailmodeladmin”包https://github.com/ababic/wagtailmodeladmin - 这允许您设置管理区域,其工作方式类似于片段编辑器,但存在于菜单的顶层。
我不知道当时是否是这样,但现在您可以更改侧边栏导航的名称,而无需移动到 ModelAdmin。这是通过使用“construct_main_menu”钩子并将下面的代码片段添加到模型管理员来完成的,如下所示:
@hooks.register("construct_main_menu")
def change_snippet_name(request, menu_items):
for item in menu_items:
if item.__class__.__name__ == "SnippetsMenuItem":
item.label = "Contact persons"
Wagtail 允许您通过扩展 wagtail 在管理面板侧边栏上创建自定义菜单ModelAdmin
您可以在此处查看新 v2.4 的示例和文档。
https://docs.wagtail.io/en/v2.4/reference/contrib/modeladmin/index.html#summary-of-features