首页 > 解决方案 > 无法更新 Django 购物车中的特定数量

问题描述

我正在尝试将我的购物车更新为通过名为“num”的表单传入的特定值。我不确定如何获取此值并将我的购物车更新为特定数字。我的主页上还有一个添加到购物车按钮,它不包含数字输入。

视频游戏.html

<form action="{% url 'add-to-cart' videogame.pk%}" method='get'>
    <input name='num' type="number" placeholder="Select Amount" value=1>
    <a href="{% url 'add-to-cart' videogame.pk%}">
        <button class='button submit'>Add to Cart</button>
    </a>
</form>

视图.py

 def add_to_cart(request, pk):
    number = 0
    if request.GET.get('num'):
        number = request.GET.get('num')
        print(number)
    videogame = get_object_or_404(Videogame, pk=pk)
    order_item, created = OrderItem.objects.get_or_create(
        videogame=videogame, user=request.user, complete=False)
    order_qs = Order.objects.filter(
        user=request.user, complete=False)
    if order_qs.exists():
        order = order_qs[0]
        if order.items.filter(videogame__pk=videogame.pk).exists():
            order_item.quantity += 1
            order_item.save()
        else:
            order.items.add(order_item)
    else:
        order = Order.objects.create(user=request.user)
        order.items.add(order_item)
    return redirect('cart')

标签: pythonhtmldjango

解决方案


推荐阅读