def addCart(request): # 取出JS传递过来的商品id值 good_id = request.GET.get("goodid") # 取出session中的id值 user_id = request.session.get("user_id") data = { "status": "200", } # 如果session中不存在用户id # 那么证明没有用户登陆过 if not user_id: data["status"] = "900" return JsonResponse(data) else: # 如果已经登录 就去过滤 carts = CartModel.objects.filter(c_goods=good_id).filter( c_user=user_id) if carts.exists(): cart = carts.first() cart.c_num += 1 data["g_num"] = cart.c_num else: cart = CartModel() cart.c_goods_id = good_id cart.c_user_id = user_id cart.c_num = 1 data["g_num"] = 1 cart.save() return JsonResponse(data)
def addToCart(request): # 目的: 网购物车中添加一条记录 # 1.用户 # 1.获取当前登录信息 # 1.登录了 # 1.获得登录的用户user # 2.没有登录了 # 1.跳到登录页 # # 2.商品 # 获得商品的id,并找到对应的商品对象 # 3.数量 # 0.根据用户,商品查询对应的记录 # 1.购物车中没有该记录 # 1.创建一条新的购物车记录,且数量为1 # 2.购物车中有该记录 # 1.在原有的记录上加1 # 4.是否选中-- 默认的 userid = request.session.get("user_id") data = {} if userid: #登录 user = UserModel.objects.filter(pk=userid).first() else: #未登录 print("------------") # 在ajax请求中,不能进行重定向 # return redirect(reverse('axf:login')) # 可以让js进行重定向 data["code"] = 304 #需要重定向到登录页 data["msg"] = "未登录,需要重新登录" return JsonResponse(data) goodsid = request.GET.get("goodsid") mygoods = Goods.objects.filter(pk=goodsid).first() # 查询cart记录 res = CartModel.objects.filter(c_user=user).filter(c_goods=mygoods) if res.exists(): #有记录 cart = res.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 = mygoods cart.c_num = 1 cart.save() data["code"] = 200 # 操作成功 data['msg'] = "添加到购车成功" data['num'] = 1 return JsonResponse(data)
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)
def addToCart(request): userid = request.session.get("user_id") # 获得用户 res = UserModel.objects.filter(pk=userid) data = {"msg": "请求成功", "code": 200, "status": "ok"} if not res.exists(): #不存在 # print("-----------1") # 重定向 到登录页 # 问题: ajax请求不能执行重定向 # return redirect(reverse("axf:logoUser")) data["code"] = 901 #未登录,重定向 data["msg"] = "未登录,请重新登录" data["status"] = "ok" return JsonResponse(data) user = res.first() # 获得商品信息 goodsid = int(request.GET.get("goodsid")) # 根据id查询出商品 goods = MarketGoods.objects.filter(pk=goodsid).first() # 保存到购物车 # 根据 用户 和 商品查询出购物车记录 cartRes = CartModel.objects.filter(c_user=user, c_goods=goods) if cartRes.exists(): #存在该记录,表示修改 cart = cartRes.first() # cart = CartModel() cart.c_num += 1 cart.save() data["num"] = cart.c_num else: #不存在,则需要添加一条记录 cart = CartModel() cart.c_goods = goods cart.c_user = user cart.c_num = 1 cart.save() data["num"] = 1 return JsonResponse(data)