2013-10-21 37 views
1
def myview(request): 
    item = Item.objects.all().count() 
    if not request.COOKIES.get('mycookie', None): 
     response.set_cookie('mycookie', item) 
     n = request.COOKIES.get('mycookie') 
    return render_to_response('index.html', {'n': n}, context_instance=RequestContext(request)) 

看來我的cookies沒有保存。我究竟做錯了什麼?Cookie未保存。在視圖中設置cookie

回答

2

當您設置cookie時,這是客戶端(瀏覽器)將此信息存儲在其Cookie存儲中的請求。

高度簡化,它的工作原理是這樣的:

  • 你告訴你的代碼,設置一個cookie。
  • 你的代碼告訴瀏覽器,嘿設置這個cookie。
  • 瀏覽器說,沒關係它的設置。
  • 在下一次請求時,瀏覽器會將cookie發回給您。

它將可用於閱讀任何請求之後請求在哪裏設置它。所以當你刷新頁面時,cookie會被你的代碼「讀取」。