1

「セッションの使用方法」を読み、に追加django.contrib.sessions.middleware.SessionMiddlewareしてMIDDLEWARE_CLASSES、次のことを試しましたdjango.contrib.sessionsINSTALLED_APPSsettings.py

if not request.session.get('confirmed_disclaimer', False):
    if request.method == "POST":
        form = DisclaimerForm(data=request.POST)
        if form.is_valid():
            request.session['confirmed_disclaimer'] = True
            return HttpResponseRedirect('.')
    else:
        form = DisclaimerForm()
else:
    if request.method == "POST":
        form = AuthenticationForm(data=request.POST)
        if form.is_valid():
            auth_login(request, form.get_user())
            return HttpResponseRedirect('.')
    else:
        form = AuthenticationForm(request)
return render_to_response('login.html', {'form': form, },
                          context_instance=RequestContext(request))

これは、最初に免責事項フォームを表示し、ログイン フォームを表示する必要があります (まだ確認されていない場合) (セッション)。しかし、私は後にセッションを失っていHttpResponseRedirectます。

使い方が悪いのでしょうか?

アドバイスありがとうございます!

編集

持っていた

...
logout(request)
return login(request)

ミックスインで。これにより、毎回新しいセッションが作成されました。@DrTyrsa を助けようとして申し訳ありませんでした。

4

0 に答える 0