Django - authenticate()返回None

时间:2016-07-12 21:05:37

标签: python django authentication nonetype

我阅读了很多关于这个问题的话题,问题始终存在。当我提交登录表单时,authenticate函数()返回None。我使用函数set_password()进行注册,它什么都没改变。

这是我的代码(也是here):

ObjectContext

1 个答案:

答案 0 :(得分:1)

您的问题是您尝试根据电子邮件/密码对验证用户,并且没有接受此类邮件的后端。模型后端接受用户名/密码对,因此要使用电子邮件进行身份验证:

(...)
if form.is_valid():
    email = form.cleaned_data["email"]
    password = form.cleaned_data["password"]
    username = User.objects.get(email=email).username
    user = auth.authenticate(username=username, password=password)
    if user:
(...)