def change_item_qty(request): try: cart_id = request.session['cart_id'] cart = Cart.objects.get(id=cart_id) # для бейджика на меню корзины request.session['total'] = cart.items.count() except: cart = Cart() cart.save() cart_id = cart.id request.session['cart_id'] = cart_id cart = Cart.objects.get(id=cart_id) # для бейджика на меню корзины qty = request.GET.get('qty') item_id = request.GET.get('item_id') # print(qty, item_id) cart.change_qty(qty, item_id) # вызов функции которую добавили в класс cart_item = CartItem.objects.get(id=int(item_id)) # \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ # все это перенесено в класс корзины models.py #cart_item.qty = int(qty) #cart_item.item_total = int(qty) * Decimal(cart_item.product.price) #cart_item.save() # расчет общей стоимости заказа #new_cart_total = 0.00 #for item in cart.items.all(): # new_cart_total += Decimal(item.item_total) #cart.cart_total = new_cart_total #cart.save() # \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ return JsonResponse({ 'cart_total': cart.items.count(), 'item_total': cart_item.item_total, 'cart_total_price': cart.cart_total, })
def change_item_qty(request): try: cart_id = request.session["cart_id"] cart = Cart.objects.get(id=cart_id) request.session["total"] = cart.items.count() except KeyError: cart = Cart() cart.save() cart_id = cart.id request.session["cart_id"] = cart_id cart = Cart.objects.get(id=cart_id) qty = request.GET.get("qty") item_id = request.GET.get("item_id") cart.change_qty(qty, item_id) cart_item = CartItem.objects.get(id=int(item_id)) return JsonResponse({"cart_total": cart.items.count(), "item_total": cart_item.item_total, "cart_total_price": cart.cart_total, })
def change_item_qty(request): try: cart_id = request.session['cart_id'] cart = Cart.objects.get(id=cart_id) request.session['total'] = cart.items.count() except: cart = Cart() cart.save() cart_id = cart.id request.session['cart_id'] = cart_id cart = Cart.objects.get(id=cart_id) qty = request.GET.get('qty') item_id = request.GET.get('item_id') cart.change_qty(qty, item_id) cart_item = CartItem.objects.get(id=int(item_id)) return JsonResponse( {'cart_total': cart.items.count(), 'item_total': cart_item.item_total, 'cart_total_price': cart.cart_total})