Сталкиваемся с проблемами при переносе пользовательских инструментов администратора Django, таких как приветствие, просмотр сайта, выход из системы на пользовательский шаблон
Мне нужно переопределить такие блоки, как branding, site_title и index title в пользовательском шаблоне. Но пользовательские инструменты не отображаются.
<Вы можете обновить заголовок сайта из вашего основного urls.py. Просто добавьте:
from django.contrib import admin
....
admin.site.site_header = "the title you want"
Если вы хотите настроить сайт администратора, вы, вероятно, захотите подклассы/определить сайт администратора по умолчанию. В документации есть вся необходимая информация. https://docs.djangoproject.com/en/dev/ref/contrib/admin/#customizing-the-adminsite-class
Если вы хотите создать свой собственный сайт администратора с пользовательским поведением, вы можете подкласс AdminSite и переопределить или добавить все, что вам нравится. Затем создайте экземпляр вашего подкласса AdminSite (так же, как вы создаете любой другой класс Python) и зарегистрируйте свои модели и подклассы ModelAdmin на нем, а не на сайте по умолчанию. Наконец, обновите myproject/urls.py, чтобы он ссылался на ваш подкласс AdminSite.
app/admin.py
from django.contrib.admin import AdminSite
from .models import MyModel
class MyAdminSite(AdminSite):
site_header = 'Monty Python administration'
admin_site = MyAdminSite(name='myadmin')
admin_site.register(MyModel)
project/urls.py
from django.urls import path
from myapp.admin import admin_site
urlpatterns = [
path('myadmin/', admin_site.urls),
]