我想用数量和产品获取用户选择的尺寸,但我不知道如何做到这一点,也不知道如何实现这一点,我试图查看文档,但找不到任何方法
添加到购物车的my views.py
class Product_detail(View):
def get(self, request, item_id,):
item = Item.objects.filter(id=item_id)
category_list = Categories.objects.all()
items = Item.objects.all()
print(item)
return render (request, 'product_detail.html',{"items" : item, 'category_list': category_list, 'item': items })
def post(self, request, item_id):
item = request.POST.get('item')
size = request.POST.get('Size')
cart = request.session.get('cart')
if cart:
cart[item] = 1
else:
cart = {}
cart[item] = 1
request.session['cart'] = cart
print(request.session['cart'])
return redirect('products:detail', item_id=item_id)
我的html代码
<form method="POST" action="#{{ item.id }}">
{% csrf_token %}
<input type="text" value="{{item.id}}" hidden name="item">
<div class="prefer">
<label for="Size" style="font-size: 20px; font-weight:500;">Select Size:</label>
<select name="Size" id="size">
<option value="S">S</option>
<option value="M">M</option>
<option value="L">L</option>
<option value="XL">XL</option>
<option value="2XL">2XL</option>
</select>
</div>
<button class="btn btn-outline-primary add" type="submit" style="float: left;">Add To Cart</button>
</form>
现在我只能获取它的商品id和数量 看起来像这样{'1':1}相反,我希望它不是{'Id':'Size':'Quantity'}如果用户选择任何大小,我想知道如何分配大小,基本上我想请求购物车中的大小和它的Id是一个数量
如有任何建议,将不胜感激
多谢各位
以前使用的代码
def post(self, request, item_id):
item = request.POST.get('item')
size = request.POST.get('Size')
cart = request.session.get('cart')
if cart:
quantity = cart.get(item)
if quantity:
cart[item] = quantity+1
else:
cart[item] = 1
else:
cart = {}
cart[item] = 1
request.session['cart'] = cart
print(request.session['cart'])
return redirect('products:detail', item_id=item_id)
cart[item] = 1
这里我们需要您从postcart[item] = size
获得的大小{'1': 'M'} , {'1': 'L'}
或{'id' , 'size', 'quantity'}
结构不起作用相关问题 更多 >
编程相关推荐