1.场景:在登录页面登录成功后,重定向到首页,在首页request.user.is_authenticated为false


2.原因:我在自定义认证后端的时候继承的是BaseBackend,而Django默认的认证后端是ModelBackend
AUTHENTICATION_BACKENDS = ['django.contrib.auth.backends.ModelBackend']


3.解决:自定义继承ModelBackend就可以了

在Django应用中,当使用自定义认证后端且继承自BaseBackend时,登录成功后在首页request.user.is_authenticated返回false。原因是未继承默认的ModelBackend。解决方法是改为继承ModelBackend,确保认证流程与Django内置机制一致。
1.场景:在登录页面登录成功后,重定向到首页,在首页request.user.is_authenticated为false


2.原因:我在自定义认证后端的时候继承的是BaseBackend,而Django默认的认证后端是ModelBackend
AUTHENTICATION_BACKENDS = ['django.contrib.auth.backends.ModelBackend']


3.解决:自定义继承ModelBackend就可以了

576
1849
1149
6641