自定义用户模型扩展AbstractUser,验证返回无

时间:2016-06-08 14:49:42

标签: python django django-authentication django-users django-custom-user

我想创建扩展 AbstractUser 的自定义用户,但是当我想要进行身份验证时,我的自定义用户会返回无。

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

我补充说:

AUTH_USER_MODEL = 'mysite.customuser'

我认为扩展AbstractUser,我的班级没有相同的方法或什么是错的

1 个答案:

答案 0 :(得分:0)

解决!

问题不在于扩展AbstracUser,问题出在我保存用户的时候, CustomUser(用户名=' myusername',密码=' mypassword'),密码保存为纯文本,de function authenticate()无法使用此功能。

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