【问题标题】:Trouble overriding the Django Admin template files无法覆盖 Django Admin 模板文件
【发布时间】:2017-01-10 15:36:24
【问题描述】:

我已经看到这个问题的答案,但我无法让它在我的网站上运行。我已经使用 Django 1.8 安装了一个站点,因为我想使用 django-admin-bootstrapped 插件。我也在使用template provided by Heroku

我想做的是至少覆盖 base_site.html 以更改站点标题和页面标题。但是,我已经尝试了该文件的多个位置,包括以下位置:

PROJECT ROOT
  |--templates
     |--admin
        |--base_site.html


PROJECT ROOT
  |--templates
     |--admin
        |--<appname>
           |--base_site.html

PROJECT ROOT
  |--<appname>
     |--templates
        |--admin
           |--base_site.html

PROJECT ROOT
  |--<appname>
     |--templates
        |--admin
          |--<appname>
             |--base_site.html

这些都不起作用。我的 settings.py 中有以下内容。

TEMPLATES = [
{
    'BACKEND': 'django.template.backends.django.DjangoTemplates',
    'DIRS': [os.path.join(BASE_DIR, 'templates')],
    'APP_DIRS': True,
    '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',
        ],
        'debug': DEBUG,
    },
},
]

我只是想知道我是否做错了什么,或者我只是没有找到模板文件夹(或文件夹顺序等)的神奇位置。

在相关说明中,是否有调试从哪里提取模板,或者只是根据它们应该来自哪里的猜测?

【问题讨论】:

    标签: django django-templates django-admin


    【解决方案1】:

    并非每个应用程序或每个模型都可以覆盖 contrib/admin/templates/admin 中的每个模板。以下可以:

    • app_index.html
    • change_form.html
    • change_list.html
    • delete_confirmation.html
    • object_history.html

    enter link description here

    覆盖 change_list.html 以更改站点标题和页面标题

    【讨论】:

    • 也许我的问题具有误导性——我不想扩展模板而是替换默认模板。
    猜你喜欢
    • 2015-03-16
    • 2017-08-23
    • 2011-06-21
    • 2014-08-30
    • 2015-10-01
    • 2023-04-03
    • 2018-04-13
    • 2019-07-02
    • 2020-05-03
    相关资源
    最近更新 更多