我正在尝试将数据变量添加到会话对象,但数据未保存。
我的views.py:
def addToCart(request):
if request.method == 'POST':
product_id = request.POST.get('product_id')
print product_id
print request.session
try:
cart = request.session['cart']
print "cart : " + cart
cart.append(product_id)
request.session['cart'] = cart
except:
print "no session data"
cart = []
cart.append(product_id)
request.session['cart'] = cart
request.session.save()
response_data = {}
response_data['result'] = 'Added To Cart Successfully !!!'
return HttpResponse(json.dumps(response_data),content_type="application/json")
else:
return HttpResponse(json.dumps({"result": "Failure !!!"}),content_type="application/json")
我运行print request.session
时可以看到会话对象,但我的数据没有被保存。每次调用我的视图时它都会返回:
1
<django.contrib.sessions.backends.db.SessionStore object at 0x03D62790>
no session data
[21/Nov/2015 11:07:53] "POST /add_to_cart/ HTTP/1.1" 200 44
1
<django.contrib.sessions.backends.db.SessionStore object at 0x03D512F0>
no session data
[21/Nov/2015 11:07:57] "POST /add_to_cart/ HTTP/1.1" 200 44
此处1
是我的product_id
。它始终不打印会话数据。
我做错了什么?
编辑:
我添加了完整的查看方法。我正在使用ajax调用来保存数据。