ログインを実現するさまざまな方法について学習する目的で、関数の django ドキュメントのサンプル コードに従っています。私は組み込みのフォームと組み込みのビューを認識しており、最終的にはそれらを使用することになりますが、知るだけでなく理解しようとしています。auth
login()
私が抱えている問題は、ユーザーが check_user に正常にログインしていることですが、リダイレクトが呼び出されたときにセッションに持続していないようです。is_authenticated() 関数で一貫性のない結果が得られるのはなぜですか? RequestContext に関係しているように感じますが、よくわかりません。
def check_user(request):
username = request.POST['username']
password = request.POST['password']
user = authenticate(username=username, password=password)
if user is not None:
if user.is_active:
login(request, user)
test1 = user.is_authenticated() ### True
test2 = request.user.is_authenticated() ### False
return HttpResponseRedirect(NEXT_PAGE) ### NEXT_PAGE gives request.user.is_authenticated() is False
else:
return HttpResponse("disabled account")
else:
return HttpResponse("invalid login")