Django Admin没有哈希用户的密码

时间:2015-09-29 19:05:49

标签: django web django-admin

我在我的Django应用中使用AbstractBaseUserUserCreationForm。通过我的应用程序注册用户时,密码以散列格式保存并保存在数据库中。但是当我尝试使用Django管理站点做同样的事情时,密码将以原始格式保存。

2 个答案:

答案 0 :(得分:4)

您需要确保模型管理员类知道如何散列密码。根据{{​​3}},如果您使用的是子类AbstractBaseUser,那么您可以扩展UserAdmin

假设您的自定义用户模型名为CustomUser,您可以尝试以下操作。

from django.contrib.auth.admin import UserAdmin

class CustomUserAdmin(UserAdmin):
    ...

admin.site.register(CustomUser, CustomUserAdmin)

答案 1 :(得分:0)

我想问题是你在admin.py中从django.contrib.auth.admin继承了ModelAdmin而不是UserAdmin。

示例代码:

from django.contrib.auth.admin import UserAdmin
from .models import Employee

class EmployeeAdmin(UserAdmin):
    pass

admin.site.register(Employee, EmployeeAdmin)