def addToCart(request): # 购物车数据需要: 商品的id, 商品的数量, 商品的选中状态(默认选中),用户 # 获得用户信息---session user_id = request.session.get("user_id") data = {} if user_id: user = UserModel.objects.filter(pk=user_id).first() else: #未登录,需要登录 # 注意:在ajax中不能使用重定向 # return redirect(reverse('axf:login')) # 告诉前段需要重新登录 data["code"] = 302 #需要重定向 data["msg"] = "未登录,需要重新登录" return JsonResponse(data) # 获得商品id goodsid = request.GET.get("goodsid") goods = Goods.objects.filter(pk=goodsid).first() # 商品数量 # 如果数据库中没有该数据,设置默认值为1 # 如果数据库中有该数据---查询出来,则在原有数据量上加1 # 根据用户来查数据,然后再过滤该商品的购物车数据 cartRes = CartModel.objects.filter(c_user=user).filter(c_goods=goods) if cartRes.exists(): # 找到了购物车记录 cart = cartRes.first() # cart = CartModel() cart.c_num += 1 cart.save() data["code"] = 200 #添加成功 data["msg"] = "加入到购物车成功" data['num'] = cart.c_num else: #没有找到 # 创建一个新的购物车记录 cart = CartModel() cart.c_user = user cart.c_goods = goods cart.c_num = 1 cart.c_isselect = True cart.save() data['code'] = 200 data["msg"] = "加入到购物车成功" data['num'] = 1 return JsonResponse(data)
def addToCart(request): user_id = request.session.get('user_id') data = {} if user_id: user = User.objects.filter(pk=user_id).first() else: # 未登录 # 在ajax请求中,不能进行重定向 # return redirect('axf:login') data['code'] = 302 data['msg'] = '未登录,需要重新登录' return JsonResponse(data) # 获得商品id goodsid = request.GET.get('goodsid') goodses = goods.objects.filter(pk=goodsid).first() # 根据用户来查数据,然后再过滤该商品的购物车数据 cartRes = CartModel.objects.filter(c_user=user).filter(c_goods=goodses) if cartRes.exists(): # 找到购物车记录 cart = cartRes.first() cart.c_num += 1 cart.save() data['code'] = 200 data['msg'] = '加入购物车成功' data['num'] = cart.c_num else: # 没有购物车 # 创建一个新的购物车 cart = CartModel() cart.c_user = user cart.c_goods = goodses cart.c_num = 1 cart.c_isselect = True cart.save() data['code'] = 200 data['msg'] = '加入购物车成功' data['num'] = 1 return JsonResponse(data)