Итак, как мы видим, всего 4 элемента на панели навигации страницы изменения пользователя в Django Admin:
1.Дом
2.Пользователи
3.Пользователи
4.Пользователь
Мы все поменяем по очереди, но сначала добавим несколько строк в admin.py
файле Users app (приложение, в котором определяется пользовательская модель пользователя):
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from .models import CustomUser
class CustomUserAdmin(UserAdmin):
change_form_template = 'change_form.html'
admin.site.register(CustomUser, CustomUserAdmin)
Пояснение к вышеприведенному коду: Сначала мы импортировали важные классы среди который UserAdmin
импортируется, чтобы его можно было использовать в качестве базового класса для определения класса CustomUserAdmin
. Затем мы определили класс CustomUserAdmin
. Позднее мы зарегистрировали класс CustomUserAdmin
на домашней странице администратора.
После этого создайте папку в приложении Users (приложение, в котором определяется пользовательская модель пользователя) по имени: templates
Now в папке templates создайте файл html по имени: change_form. html
* 1 036 * В файле
change_form. html вставьте следующий код:
{% extends "admin/change_form.html" %}
{% load i18n admin_urls static admin_modify %}
{% block breadcrumbs %}
<div class="breadcrumbs">
<!-- Element 1 -->
<a href="{% url 'admin:index' %}">{% trans 'Home' %}</a>
<!-- Element 1 ends -->
<!-- Element 2 -->
› <a href="{% url 'admin:app_list' app_label=opts.app_label %}">{{ opts.app_config.verbose_name }}</a>
<!-- Element 2 ends -->
<!-- Element 3 -->
› {% if has_view_permission %}
<a href="{% url opts|admin_urlname:'changelist' %}">
{{ opts.verbose_name_plural|capfirst }}</a>{% else %}{{ opts.verbose_name_plural|capfirst }}
{% endif %}
<!-- Element 3 ends -->
<!-- Element 4 -->
›
{% blocktrans with name=opts.verbose_name %}
{{ name }}
{% endblocktrans %}
<!-- Element 4 ends -->
</div>
{% endblock %}
Таким образом, в приведенном выше коде есть 4 раздела, а также у нас есть 4 элемента в навигационной панели Страница изменения пользователя. Таким образом, один раздел для одного элемента.
Изменение 1-го элемента (т. Е. Дома)
Для этого вам необходимо go к разделу <!-- Element 1 -->
файла change_form. html в папке templates приложения Users (Приложение, в котором определяется пользовательская модель пользователя).
После этого замените строку 'Home'
на имя, которое вы хотите дать 1-й элемент панели навигации на странице изменения пользователя.
Вот и все для этого элемента .
Изменение 2-го элемента (т.е. пользователей)
Для этого вам необходимо go в apps.py файл в Пользователи app (Приложение, в котором определяется пользовательская модель пользователя)
И затем в классе, который будет иметь имя, например:
* 1 076 * UsersConfig (т.е. App_NameConfig)
добавить следующую строку:
verbose_name = 'Type here the name you want to give to the 2nd element of the navbar of User Change Page'
Примечание: Убедитесь, что вы добавили выше строка в классе только путем помещения надлежащего пробела перед добавлением вышеуказанной строки.
Вот и все для этого элемента.
Изменение 3-го элемента (т.е. пользовательских пользователей)
Для этого вам нужно go в файл models.py в приложении Users (Приложение, в котором определяется пользовательская модель пользователя)
И там в Custom User Model класс вы должны добавить следующий код:
class Meta:
verbose_name="Type here the name you want to give to the 3rd element of the navbar of User Change Page"
Примечание: Убедитесь, что вы добавили вышеупомянутые строки в Класс только путем помещения надлежащего пробела перед добавлением вышеуказанных строк.
Это все для этого элемента.
Изменение 4-го элемента (т.е. пользовательский пользователь)
Для этого вам необходимо go перейти в раздел <!-- Element 4 -->
файла change_form. html в папке templates файла t Приложение Users (Приложение, в котором определяется пользовательская модель пользователя).
И там замените {{name}} именем, которое вы хотите дать на 4-й элемент панели навигации на странице изменения пользователя.
Также, если вы хотите отобразить имя пользователя, данные которого должны быть изменены, вы можете использовать:
{{ original|truncatewords:"18" }}
вместо {{name}} .
Это все для этого элемента.
Таким образом, вы можете изменить все 4 элемента панели навигации на странице изменения пользователя в Django Admin с пользовательской моделью.
Надеюсь, это поможет вам !!