Python 如何更改django管理css样式和字体?
我正在用django开发一个应用程序 我想自定义django管理界面,但我不能添加自定义字体 我想为波斯语使用自定义字体 以下是我所做的,但没有得到正确的结果: 步骤1: 我在以下目录中创建了一个名为admin-extra.css的css文件:Python 如何更改django管理css样式和字体?,python,django,django-templates,django-admin,Python,Django,Django Templates,Django Admin,我正在用django开发一个应用程序 我想自定义django管理界面,但我不能添加自定义字体 我想为波斯语使用自定义字体 以下是我所做的,但没有得到正确的结果: 步骤1: 我在以下目录中创建了一个名为admin-extra.css的css文件: /templates/css/admin-extra.css 在此之后,我在安装的应用程序中更改了django.contrib.admin之前myappname的位置,如下所示: INSTALLED_APPS = [ 'django.cont
/templates/css/admin-extra.css
在此之后,我在安装的应用程序中更改了django.contrib.admin之前myappname的位置,如下所示:
INSTALLED_APPS = [
'django.contrib.auth',
'pool',
'django.contrib.admin',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'fcm_django'
]
admin-extra.css是这样的:
body {
margin: 0;
padding: 0;
font-size: 40px;
color: #333;
background: #fff;
}
{% extends "admin/base.html" %}
{% load static from staticfiles %}
{% block title %}{{ title }} | {{ site_title|default:_('Django site admin') }}{% endblock %}
{% block extrastyle %}{{ block.super }}<link rel="stylesheet" type="text/css" href="{% static "css/admin-extra.css" %}" />{% endblock %}
{% block branding %}
<h1 id="site-name"><a href="{% url 'admin:index' %}">{{ site_header|default:_('Django administration') }}</a></h1>
{% endblock %}
{% block nav-global %}{% endblock %}
最后,我在\templates\base\u site.html中的一个名为base\u site.css的文件中添加了admin extra,其内容如下:
body {
margin: 0;
padding: 0;
font-size: 40px;
color: #333;
background: #fff;
}
{% extends "admin/base.html" %}
{% load static from staticfiles %}
{% block title %}{{ title }} | {{ site_title|default:_('Django site admin') }}{% endblock %}
{% block extrastyle %}{{ block.super }}<link rel="stylesheet" type="text/css" href="{% static "css/admin-extra.css" %}" />{% endblock %}
{% block branding %}
<h1 id="site-name"><a href="{% url 'admin:index' %}">{{ site_header|default:_('Django administration') }}</a></h1>
{% endblock %}
{% block nav-global %}{% endblock %}
您应该覆盖
admin.py
文件
from django.contrib import admin
class MyModelAdmin(admin.ModelAdmin):
class Media:
css = {
'all': ('/templates/css/admin-extra.css ',)
}
admin.site.register(MyModel,MyModelAdmin)
您需要添加base_site.html,如下所示:-
- 模板
- 管理员
- base_site.html
- 管理员
{%static%}
指向该文件夹。因此,如果您在html中编写{%static“css/admin extra.css”%}
,您的css应该位于APP\u文件夹/static/css/admin extra.css
中
希望它能起作用。我应该为我拥有的每个型号都这样做吗?如果我这样做,主管理页面会被覆盖吗?如果你想覆盖整个html文件,你应该遵循[回答,但你只需更改css文件。是的,你可以覆盖每个模型。你也可以使用BaseAdminModel和媒体选项。请检查浏览器控制台。是否有404 css未找到?你可以共享你的
admin.py
文件吗?我确实这样做了。但是没有发生任何事情。请注意,要使此功能正常运行,应用程序正在运行您将文件templates/admin/base\u site.html
放置在INSTALLED\u APPS
设置中的django.contrib.admin
上方。