如何修改Django Admin Dashboard管理面板的背景颜色?
修改Django Admin背景颜色方案
方案1:仅修改Dashboard页面背景色
仅作用于管理员登录后的首页,不会影响其他功能页面:
- 首先在你的项目任意注册过的应用(例如命名为common)下,新建
templates/admin目录 - 从Django安装目录的
contrib/admin/templates/admin路径下,复制index.html文件到你刚创建的templates/admin目录中 - 打开复制后的
index.html,在{% extends "admin/base_site.html" %}下方添加自定义样式块,示例如下:
{% block extrahead %} {{ block.super }} <style> /* 仅匹配Dashboard页面的body标签,修改背景色 */ body.dashboard { background-color: #f0f2f5; /* 替换为你需要的颜色值即可 */ } /* 可选:修改Dashboard页面内卡片模块的背景色 */ .dashboard .module { background-color: #ffffff; } </style> {% endblock %}
方案2:覆盖全管理面板的背景色(所有Admin页面生效)
实现方式1:直接在基础模板注入样式
适合样式修改量少的场景:
- 在应用的
templates/admin目录下新建base_site.html文件,内容如下:
{% extends "admin/base.html" %} {% block extrahead %} {{ block.super }} <style> /* 全局修改所有Admin页面的body背景 */ body { background-color: #f0f2f5; /* 自定义背景色 */ } /* 可选:修改顶部导航栏背景 */ #header { background-color: #2c3e50; } /* 可选:修改侧边栏、表格、表单模块的背景 */ #sidebar, .module, table, .form-row { background-color: #ffffff; } </style> {% endblock %}
实现方式2:独立静态CSS文件引入
适合样式修改量多、需要统一管理的场景:
- 在应用下新建
static/admin/css/custom.css文件,把你需要的所有自定义样式写入该文件 - 修改刚才创建的
base_site.html,引入静态CSS文件:
{% extends "admin/base.html" %} {% load static %} {% block extrahead %} {{ block.super }} <link rel="stylesheet" href="{% static 'admin/css/custom.css' %}"> {% endblock %}
- 确保项目
settings.py中django.contrib.staticfiles已加入INSTALLED_APPS列表,且STATIC_URL配置正确
注意:请确保你存放自定义admin模板/静态文件的应用,在
settings.py的INSTALLED_APPS列表中排在django.contrib.admin的前面,否则自定义内容会无法生效。如果样式不生效可以先清除浏览器缓存再验证。
内容的提问来源于stack exchange,提问作者yuuki
相关产品推荐
相关产品推荐

