如何使用我的网站';Django管理区域的基本模板是什么?

如何使用我的网站';Django管理区域的基本模板是什么?,django,Django,我知道我可以通过创建一个名为admin/base.html的模板并编写如下内容来覆盖管理模板: <h1>Hello!</h1> {% block content %} {% endblock %} 你好! {%block content%} {%endblock%} 但是,我的网站有自己的基本模板(使用“内容”作为内容块),我希望将其用于管理网站。除了站点的基本HTML之外,我还需要添加管理员CSS和脚本,例如: <link rel="stylesheet" t

我知道我可以通过创建一个名为
admin/base.html
的模板并编写如下内容来覆盖管理模板:

<h1>Hello!</h1>
{% block content %}
{% endblock %}
你好!
{%block content%}
{%endblock%}
但是,我的网站有自己的基本模板(使用“内容”作为内容块),我希望将其用于管理网站。除了站点的基本HTML之外,我还需要添加管理员CSS和脚本,例如:

<link rel="stylesheet" type="text/css" href="{% block stylesheet %}{% static "admin/css/base.css" %}{% endblock %}" />


因此,我会用一个从我的站点基础模板继承的模板覆盖管理模板。但是,如果我在此模板中定义一个内容块来插入内容,它将立即被各个管理视图模板覆盖。更改块名似乎是错误的解决方案,因为它用于管理模板这一事实表明它是Django中使用的正确约定。

只需创建一个admin/base.html文件,并将其放入:

{% extends "base.html" %}
# according base.html to the name of your base layout file

好的做法是复制原始admin/base_site.html并在此处进行调整(编辑标题、品牌、添加
{%block extrahead%}
{%block extrastyle%}
使用您自己的css/js等


管理站点不需要集成在自定义模板中,但您可以轻松地将样式与自己的首选项相一致。

CSS和JS在管理基础模板中硬编码。如果您想替换管理布局,唯一的解决方案是扩展基础布局,并从管理基础模板手动重新导入CSS/JS。不是吗如果您有页眉、页脚、菜单、选项卡……和扩展自己的基础一样容易设置