2016-09-24 13 views
0

次のコードを使用して、ビューにクッキーを設定しようとしています。ビューがロードされるとDjangoビューでクッキーを設定する

def index(request): 
    resp = HttpResponse("Setting a cookie") 
    resp.set_cookie('name', 'value') 
    if 'name' in request.COOKIES: 
     print "SET" 
    else: 
     print "NOT SET" 
    return render(request, 'myapp/base.html', {}) 

、コンソールには、クッキーが設定されていないことを意味する、NOT SETを出力します。すべてのチュートリアル/ドキュメントでは、これが使用される方法のようです。しかし、それは単に私のためには機能しません:/

助けてください?私はDjango 1.9.8を使用しており、私のローカルサーバー、または127.0.0.1:8000でアプリを実行しています。

答えて

3

レスポンスを作成してクッキーを設定していますが、そのレスポンスで実際には何もしません。 renderショートカットは、実際にブラウザに返信される独自の応答を作成します。

あなたは、レンダリングからの戻り値をキャプチャし、その上でクッキーを設定する必要があります。これは、感覚や作品を作る

if 'name' in request.COOKIES: 
    print "SET" 
else: 
    print "NOT SET" 
resp = render(request, 'myapp/base.html', {}) 
resp.set_cookie('name', 'value') 
return resp 
+0

を。本当にありがとう。 –

関連する問題