def cart(request):
if request.method == 'POST':
# del request.session['cart']
print(request.session.keys())
#获取变量
flag = request.POST.get('flag')
if flag == 'add':
cartMangerObj = getCartManger(request)
cartMangerObj.add(**request.POST.dict())
elif flag == 'plus':
cartMangerObj = getCartManger(request)
cartMangerObj.update(step=1 , **request.POST.dict())
elif flag == 'minus':
cartMangerObj = getCartManger(request)
cartMangerObj.update(step=-1, ** request.POST.dict())
elif flag == 'delete':
cartMangerObj = getCartManger(request)
cartMangerObj.delete(**request.POST.dict())
print(request.session['cart'])
request.session['cart'] = request.session['cart']#在这里对上方的方法修改的内容重新赋值给session
return HttpResponseRedirect('/cart/queryAll/')
这是一个电商项目的小模块,该部分是在用户未登录时将购物车信息存储在session中,
结果我跑通方法,重定向之后发现购物车是空的,搞了一下午,我先是以为是不是哪里没保存上,或者查询之前是不是给我清空了,经过断点和打印操作,发现重定向后的session中我存储的数据没有携带到查询方法中,孤注一掷结果成了,
太神奇了