这是我的用户认证方法:
def user_login(request):
if request.method == 'POST':
username = request.POST.get('username')
password = request.POST.get('password')
user = authenticate(username=username, password=password)
if user:
if user.is_active:
login(request, user)
return HttpResponseRedirect(reverse('index'))
else:
print('TEST')
messages.info(request, 'Inactive user')
return HttpResponseRedirect(reverse('index'))
else:
messages.error(request, 'Invalid username/password!')
return HttpResponseRedirect(reverse('index'))
else:
return render(request, 'mainapp/login.html', {})
如果用户存在但未激活,则会显示错误消息:messages.error(request, 'Invalid username/password!')
return HttpResponseRedirect(reverse('index'))
改为:
print('TEST')
messages.info(request, 'Inactive user')
return HttpResponseRedirect(reverse('index'))
我不知道这里出了什么问题... 有任何提示吗?
User is not None
吗? - Ignacio Vazquez-Abrams