Django 1.10 или более поздняя версия: переопределение base.html не работает
Я создаю сайт на Django с пользовательским представлением, и хочу сделать ссылку на это представление на странице администратора. Но даже если я следовал указаниям по переопределению в документации или Youtube, но я не показываю изменения в файле переопределения.
{% extends "admin/base.html" %}
{% block title %}{{ title }} | {{ site_title|default:_('Django site admin') }}{% endblock %}
{% block branding %}
<h1 id="site-name"><a href="{% url 'admin:index' %}">Test</a></h1>
{% endblock %}
{% block nav-global %}{% endblock %}
Мой base.html в ratonix\templates\admin
Дерево карты:
- └─ratonix
----└──ratonix
----------└── settings.py
----------└─ views.py
. ----------└── urls.py
. --- └─ шаблоны
. -----------└── admin
------------ └─ base.html
.- └── manage.py
Папка Templates в той же папке, что и manage.py
Это мой текущий settings.py:
Я перезапустил сервер, а также использовал разные браузеры, и ни одно из моих изменений не отображается.
Я делаю что-то не так, или инструкции, приведенные в учебнике, просто неверны?
Порядок INSTALLED_APPS
влияет на порядок переопределения.
Если у вас есть templates/admin/base.html
в приложении ratonix
, то ratonix
должен стоять перед django.contrib.admin
в INSTALLED_APPS
, чтобы этот шаблон был использован.
Поскольку у вас также есть DIRS
в конфигурации TEMPLATES
, вы также можете использовать <PROJECT>/templates/admin/base.html
, и это будет использоваться; согласно документации ,
Если у вас есть каталоги шаблонов приложений и проектов, которые оба содержат переопределения, стандартный загрузчик шаблонов Django попытается сначала загрузить шаблон из каталога на уровне проекта. Другими словами, DIRS будет искаться до APP_DIRS.
Обратите внимание, что предпочтительной точкой настройки для администратора является admin/base_site.html
.