我正在使用AbstractBaseUser
和UserCreationForm
来开发我的Django应用。通过我的应用程序注册用户时,密码会以哈希格式保存并存储在数据库中。但是,当我尝试使用Django管理员网站进行相同的操作时,密码以原始格式保存。
我正在使用AbstractBaseUser
和UserCreationForm
来开发我的Django应用。通过我的应用程序注册用户时,密码会以哈希格式保存并存储在数据库中。但是,当我尝试使用Django管理员网站进行相同的操作时,密码以原始格式保存。
您需要确保您的模型管理类知道如何哈希密码。根据文档,如果您正在使用子类化AbstractBaseUser
,则可能可以扩展UserAdmin
。
假设您的自定义用户模型称为CustomUser
,您可以尝试以下操作。
from django.contrib.auth.admin import UserAdmin
class CustomUserAdmin(UserAdmin):
...
admin.site.register(CustomUser, CustomUserAdmin)
from django.contrib.auth.admin import UserAdmin
from .models import Employee
class EmployeeAdmin(UserAdmin):
pass
admin.site.register(Employee, EmployeeAdmin)