Отображение корректной информации о фреймворке аутентификации django на пользовательской странице администратора
Я пытаюсь отобразить пароль в таблице бэкенда Admin следующим образом, содержащим алгоритм, итерации, соль и хэш:
Однако моя текущая страница выглядит следующим образом:
Как вы можете видеть, это просто хэшированный пароль, не отображающий никакой информации, в отличие от приведенного выше. Кто-нибудь может понять, где я ошибаюсь?
Пожалуйста, найдите мой код ниже:
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from hobbies.models import extendedUser, User, Hobby
from .forms import LoginForm, SignUpForm
from django.forms import ModelForm
from django.contrib.auth.forms import ReadOnlyPasswordHashField
#admin.site.register(User,UserAdmin)
class CustomUserAdmin(UserAdmin):
add_form = SignUpForm
form = LoginForm
model = extendedUser
readonly_fields = ["password"]
list_display = ('email', 'is_staff', 'is_active',)
list_filter = ('email', 'is_staff', 'is_active',)
fieldsets = (
(None, {'fields': ('email', 'password', 'city')}),
('Permissions', {'fields': ('is_staff', 'is_active')}),
)
add_fieldsets = (
(None, {
'classes': ('wide',),
'fields': ('email', 'password', 'is_staff', 'is_active')}
),
)
search_fields = ('email',)
ordering = ('email',)
admin.site.register(User, CustomUserAdmin)
Спасибо за уделенное время, Алекс
Я думаю, что они используют отображение с помощью этой функции:
get_session_auth_hash()
, который является частью базового абстрактного пользователя в django.contrib.auth.base_user