我知道有人多次询问并回答了这个问题,但我基本上浏览了所有关于堆栈溢出的帖子,但仍然无法让它发挥作用。现在我只是想简单地更改管理站点标题。我有以下内容:
#base_site.html
{% extends "admin/base_site.html" %}
{% block title %}{{ title }} | {{ site_title|default:_('NEW TITLE') }}{% endblock %}
{% block branding %}
<h1 id="site-name"><a href="{% url 'admin:index' %}">{{ site_header|default:_('NEW TITLE') }}</a></h1>
{% endblock %}
{% block nav-global %}{% endblock %}
我试着把它放进去
my_site/templates/admin/base_site.html,
my_site/templates/admin/my_app/base_site.html, and
my_site/my_app/templates/admin/base_site.html,
但这些都不起作用。
settings.py:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
'loaders': [
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
],
},
},
]
我也尝试过直接更改 django\contrib\admin\templates\admin\base_site.html 但仍然没有任何反应。
我现在真的很沮丧,绝对需要一些帮助,谢谢
像这里一样,最上面的白色条显示“#base_site.html!!@#”,这是我偶然放在 my_site/templates/admin/base_site.html 中作为评论的内容。所以它有点工作,但我仍然不明白为什么我不能更改网站标题。
最佳答案
在设置 -> INSTALLED_APPS
中的 'django.contrib.admin'
上方添加您的 Django 应用程序。 INSTALLED_APPS
中应用的顺序很重要。
# settings.py
...
INSTALLED_APPS = [
"your_app.yourAppConfig", # add your app here
"django.contrib.admin",
"django.contrib.auth",
"django.contrib.contenttypes",
...
使用 my_site/my_app/templates/admin/base_site.html
put your app where you define this template before
'django.contrib.admin'
, inINSTALLED_APPS
关于python - django:我如何实际覆盖管理站点模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39132187/