python - django:我如何实际覆盖管理站点模板

标签 python django django-admin

我知道有人多次询问并回答了这个问题,但我基本上浏览了所有关于堆栈溢出的帖子,但仍然无法让它发挥作用。现在我只是想简单地更改管理站点标题。我有以下内容:

#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 但仍然没有任何反应。

我现在真的很沮丧,绝对需要一些帮助,谢谢

更新: 其实我发现本地模板确实有效果。 enter image description here

像这里一样,最上面的白色条显示“#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', in INSTALLED_APPS

source link

关于python - django:我如何实际覆盖管理站点模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39132187/

相关文章:

python - django.core.exceptions.ImproperlyConfigured。包含的 URLconf 中似乎没有任何模式

python - 如何让用户在 Django 中构建自己的平面页面?

python - 如何使用通用的ListView

python - 如何在Scrapy中使用多个嵌套跨度CSS选择器?

python - 将列表转换为字符串并允许使用分隔符

python - 如何使用 github-flask 为 {+path} 提供 URL 参数?

python - 如何在django中列出用户不属于的所有组?

django-admin - django扩展了ModelAdmin字段集并保留默认值

Django 管理错误 ValidationError : ['ManagementForm data is missing or has been tampered with' ] due to conditional inline use

python - pyparsing 中嵌套结构的技巧