27

これは簡単だと思いますが、わかりません。オプトアウト ビューを作成しようとしています。取得リクエストを受信して​​います。urls.py を通じて、オプトアウト ビューをレンダリングします。このビューでは、ユーザーのいくつかのパラメーターをデータベースに保存してから、ユーザーを外部 URL にリダイレクトしたいと考えています。私は試した:

return redirect('http://stackoverflow.com/')

Django のドキュメントから。ただし、オプトアウト ビューはリダイレクトを返す代わりにトレーニング テンプレートをレンダリングしますが、パラメータは期待どおりにデータベースに保存されます。私のコードは次のとおりです。

def optout(request):
    if (('REMOTE_USER' in request.META and request.META['REMOTE_USER'] != "") or 
        (request.session.get('userid', False) and request.session['userid'] != "")):
        if ('REMOTE_USER' in request.META and request.META['REMOTE_USER'] != ""):
            userid = request.META['REMOTE_USER']
        if (request.session.get('userid', False) and request.session['userid'] != ""):
            userid = request.session['userid']
        user = User.objects.get(username=userid)
        user.optout = True
        user.postpone = False
        user.save()
        return redirect('http://stackoverflow.com/')
    context = { 'userid': "" }
    return render(request, 'games/Training.html', context)

どんな助けでも大歓迎です。

4

2 に答える 2