Задать вопрос

Как вернуть стандартное отображение пароля User в админке Django?

Добрый день

Добавил дополнительные поля для пользователя через AbstractUser
models.py

class User(AbstractUser):
    llcname = models.CharField('Наименование организации', max_length=50, blank=True)
    llctin = models.CharField('ИНН', max_length=12, blank=True)
    llccity = models.CharField('Город', max_length=30, blank=True)
    llctel = models.CharField('Телефон', max_length=30, blank=True)


Занес эти доп поля в админке через add_fields, но смотрится не очень. Все в разных местах.
Решил вывести все по другому и тут проблема, пароль отображается в обычном инпуте (Также как и через add_fields).
admin.py

class UserAdmin(admin.ModelAdmin):
    list_display = ('username', 'last_name', 'first_name', 'llcname', 'llctin', 'is_active')
    fields = (
        'username',
        ('last_name', 'first_name'), 
        ('llcname', 'llctin'), ('llctel', 'llccity'), 
        'email', 'password',
        ('is_superuser', 'is_staff', 'is_active'),
        ('date_joined', 'last_login'),
        'groups'
    )

admin.site.register(User, UserAdmin)


Как вернуть стандартное отображение пароля и ссылку на его смену, сохранив нормальное и удобное расположение полей?
Стандарт django

5fdb10e6ac8a0041460077.png

То что получилось

5fdb110ac845f530984545.png

Заранее большое спасибо ☺️
  • Вопрос задан
  • 381 просмотр
Подписаться 1 Простой 8 комментариев
Решения вопроса 1
@ANDYNEI Автор вопроса
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@mr_forlife
В файле admin.py класс UserAdmin наследуйте от UserAdmin модуля django.contrib.auth.admin
admin.py

from django.contrib.auth.admin import UserAdmin

class UserAdmin(UserAdmin):
    list_display = ('username', 'last_name', 'first_name', 'llcname', 'llctin', 'is_active')
    fields = (
        'username',
        ('last_name', 'first_name'), 
        ('llcname', 'llctin'), ('llctel', 'llccity'), 
        'email', 'password',
        ('is_superuser', 'is_staff', 'is_active'),
        ('date_joined', 'last_login'),
        'groups'
    )

admin.site.register(User, UserAdmin)

Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы