扩展 AbstractUser 的自定义用户模型,验证 return None

Custom User Model extending AbstractUser, authenticate return None

我想创建我的自定义用户扩展 AbstractUser,但是当我想验证我的自定义用户时 return None.

当我创建 CustomUser() 时,它存储在数据库中,但密码未加密。我可以使用 banckend default 的身份验证功能吗?或者我必须为我的自定义用户创建自定义后端。

我补充说:

AUTH_USER_MODEL = 'mysite.customuser'

我想扩展 AbstractUser,我的 class 没有相同的方法或有问题

已解决!

问题不在于扩展 AbstracUser,问题在于我保存用户时, CustomUser(username='myusername', password='mypassword'),密码以纯文本形式保存,de function authenticate() 不适用于此。

有必要使用 UserCreationForm 保存用户,或扩展它,最重要的是 save() 方法,因为使用 set_password() 方法设置加密密码,因此 authenticate() 方法有效。