Esempio n. 1
0
def addToCart(request):
    userid = request.session.get("user_id")
    data = {}
    if userid:
        user = UserModel.objects.filter(pk=userid).first()
    else:
        # 在ajax请求中,不能进行重定向
        # return redirect(reverse('axf:login'))
        data["code"] = 304 #需要重定向到登录页面
        data["msg"] = "登录后可继续操作"
        return JsonResponse(data)

    goodsid = request.GET.get("goodsid")
    goods = Goods.objects.filter(pk=goodsid).first()

    # 查询cart记录
    res = CartModel.objects.filter(c_user=user).filter(c_goods=goods)
    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 = goods
        cart.save()
        data["code"] = 200
        data["msg"] = '添加到购物车成功'
        data["num"] = 1

    return JsonResponse(data)
Esempio n. 2
0
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)
Esempio n. 3
0
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)
Esempio n. 4
0
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)
Esempio n. 5
0
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)