管理界面 Theme-ing?

Admin Interface Theme-ing?

我想知道管理界面的主题化程度如何?我 运行 穿过这个 doc 并且它似乎谈论了一些选择。

与 django 管理默认界面相比,这是一个巨大的进步,但我想知道是否有人知道替换的任何下降。

例如,我最讨厌的一个问题是内容框的大小。

见附件。 body 的大小是由数据模型驱动的吗?我不知何故搞砸了?或者还有什么我遗漏的吗?

是的,这是可能的。据我所知,公开可用的主题并不多。我修改了大多数客户的默认主题。这不是一次大修,只是为了让我们的客户感觉更像是一种品牌体验。

首先,您需要安装 Wagtail 样式指南。

INSTALLED_APPS = (
    ...
    'wagtail.contrib.styleguide',
)

您可以在此处阅读有关风格指南的更多信息:http://docs.wagtail.io/en/latest/contributing/styleguide.html

然后您就可以进入您的管理 > 设置 > 样式指南(Link 看起来像这样:http://localhost:8000/admin/styleguide/

然后我要做的是右键单击我要设置样式的部分,在我的浏览器中单击 "inspect" 并查看我要编辑的元素和样式。这似乎是设置所需样式的最快方式。

在开始设置样式之前,您需要为管理员准备一个 CSS 文件。为此,我们可以使用一个钩子。

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"))

您可以在此处阅读有关 Wagtail 挂钩的更多信息:http://docs.wagtail.io/en/latest/reference/hooks.html

这会在加载主要 css 文件后,将 <link /> 元素添加到管理页面的 <head>

现在您需要做的就是创建一个名为 wagtail.css 的新文件,确保它位于您的 /static/css/ 目录中(即 /static/css/wagtail.css)您可以覆盖所有样式。请记住参考风格指南!

编辑: 如果您想更深入地了解管理自定义,我已经制作了一个关于这个主题的视频。 https://www.youtube.com/watch?v=5flSOmcWGfk&list=PLMQHMcNi6ocsS8Bfnuy_IDgJ4bHRRrvub&index=44