登录验证时CustomBackend方法没有被调用,正确的用户和密码均登录失败

来源:6-3 用户登录-2

临泽而雨

2017-09-21

老师,我在将虚拟环境的django版本降至1.9后用户老是登录失败,经过调试后发现每次登录验证时setting.py文件中AUTHENTICATION_BACKENDS
配置的CustomBackend方法都没有被调用,不知道是我程序中出了什么问题,还请老师指点。

ps:在xadmin后台管理系统中登录超级用户也提示用户和密码错误。

写回答

2回答

bobby

2017-09-25

AUTHENTICATION_BACKENDS = (
    'users.views.CustomBackend',
)
class CustomBackend(ModelBackend):
    def authenticate(self, username=None, password=None, **kwargs):
        try:
            user = UserProfile.objects.get(Q(username=username)|Q(email=username))
            if user.check_password(password):
                return user
        except Exception as e:
            return None

这是我这里的代码  你直接拷贝过去看看能不能运行

0
0

临泽而雨

提问者

2017-09-21

我将django的版本升成1.11.5就可以成功登录了,但是生成验证码又报错了。请问老师django版本我该怎么选择?

0
0

Python3.6+django+xadmin,打造在线教育平台

【毕设】Python 2.7到3.6 完美适配,Django升级2.0

3677 学习 · 4038 问题

查看课程