@fishouk
Web программист

Как расширить функциональность django cart?

В общем есть сайт на питоне с джанго и модуль карт.
Я хочу реализовать функциональность + 1 товар, - 1 товар.
Html
<form class="cart-button" action="/cartminus/" method="GET">
            <input name="product_id" type="hidden" value="{{ item.product.id }}">
            <input name="quantity" type="hidden" value="{{ item.quantity }}">
            <input class="cart-button-plus" type="submit" value="-">
       </form> 
       <div id="cartAm">{{ item.quantity }}</div>
       <form class="cart-button" action="/cartplus/" method="GET">
            <input name="product_id" type="hidden" value="{{ item.product.id }}">
            <input name="quantity" type="hidden" value="{{ item.quantity }}">
            <input class="cart-button-minus" type="submit" value="+">
       </form>


А на питоне выглядит так
from django.shortcuts import render, render_to_response
from django.http import HttpResponse, HttpResponseRedirect
from cart import Cart
from spares.models import Goods, ExchangeRate
from users.views import getCart
from django.core.urlresolvers import reverse

def cartminus(request):
    product_id = request.GET['product_id']
    quantity = request.GET['quantity'] 
    cart = Cart(request)
    for item in cart:
        if item.product.id == product_id:
           item.quantity = int(quantity) - int(1)
           item.save()
    return HttpResponseRedirect('/trash/')

def cartplus(request):
    product_id = request.GET['product_id']
    quantity = request.GET['quantity'] 
    cart = Cart(request)
    for item in cart:
        if item.product.id == product_id:
           item.quantity = int(quantity) + int(1)
           item.save()
    return HttpResponseRedirect('/trash/')


Не работает, при нажатии на кнопки, просто обновляет страницу и все, что не так? есть, советы, предложения, что почитать?
  • Вопрос задан
  • 477 просмотров
Решения вопроса 1
@fishouk Автор вопроса
Web программист
UPD я решил это

def cartminus(request):
    product_id = request.GET['product_id']
    product = Goods.objects.get(id=product_id)
    quantity = request.GET['quantity'] 
    cart = Cart(request)
    for item in cart:
        if item.product.id == product.id:
           quantity = int(item.quantity) - int(1)
           if quantity == 0:
                item.delete()
           else:
                item.quantity = int(quantity)
                item.save()
    return HttpResponseRedirect('/trash/')

def cartplus(request):
    product_id = request.GET['product_id']
    product = Goods.objects.get(id=product_id)
    quantity = request.GET['quantity'] 
    cart = Cart(request)
    for item in cart:
        if item.product.id == product.id:
           quantity = int(item.quantity) + int(1)
           if quantity == 0:
                item.delete()
           else:
                item.quantity = int(quantity)
                item.save()
    return HttpResponseRedirect('/trash/')
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы