鹡鸰定制管理员

Wagtail customizing admin

我是 Wagtail 和 Django 开发的新手。如何更改 Wagtail 管理页面的颜色?根据一些问答,我可以通过 core.css 更改颜色,但是扫描代码需要很多时间。

有一个更简单的方法。您可以注册一个 Wagtail Hook(在此处了解它们:http://docs.wagtail.io/en/latest/reference/hooks.html)。挂钩是向页面或操作添加附加属性或功能的方法。有时一个钩子是 运行 在一个动作之前,或者在一个动作之后。在这种情况下,当全局管理员 css 被添加到您的管理员时,您需要附加另一个 .css 文件。

这是我几周前为 Wagtail 2.1 编写的钩子片段。

"""Add custom .css hook"""
from django.contrib.staticfiles.templatetags.staticfiles import static
from django.utils.html import format_html

from wagtail.core import hooks


# Register a custom css file for the wagtail admin.
@hooks.register("insert_global_admin_css", order=100)
def global_admin_css():
    """Add /static/css/wagtail.css."""
    return format_html('<link rel="stylesheet" href="{}">', static("css/wagtail.css"))

添加后,您只需确保 /static/css/wagtail.css 存在于您的静态目录中,您可以覆盖管理中的任何 CSS。

了解如何在管理员中覆盖样式的一种简单方法是:右键单击 -> 检查(Chrome、Firefox、Safari 等将支持此操作)。在 Elements 选项卡中可以查看所有 HTML 元素,当您单击一个元素时,您可以看到与每个元素关联的所有样式和选择器。只需复制您要编辑的选择器并将其粘贴到新的 wagtail.css 文件中。