如何解决如何在不提交的情况下显示选择了哪个产品
我创建了一个类别和产品下拉菜单,但是当我选择类别并按下选择按钮时,它不会显示与产品菜单相同的类别。我只想显示选择了哪个类别和产品的消息。我使用了 Django 消息,但是当我提交页面时,它会显示产品 ID。我想在提交前显示选择的类别和产品名称
视图.py
class OrderProduct(TemplateView):
template_name = 'purchase/orderProduct.html'
def get(self,request,*args,**kwargs):
allOrder = OrdersModel.objects.all()
categories = CategoryModel.objects.all()
categoryId = self.request.GET.get('SelectCategory')
predoct = ProductModel.objects.filter(category_id=categoryId)
args = {'categories': categories,'product': predoct,'allOrder': allOrder}
return render(request,self.template_name,args)
def post(self,request):
productobj = self.request.GET.get('SelectProduct')
if productobj:
messages.info(request,productobj)
try:
data = self.request.POST.get
orderProduct = OrdersModel(
product_id=productobj,description=data('description'),quantity=data('quantity'),)
orderProduct.save()
return redirect('orderProduct')
except Exception as e:
return HttpResponse('Failed{}'.format(e))
模板
{% block content %}
<form method="get">
{% csrf_token %}
<label>
<select name="SelectCategory">
<option disabled="disabled" selected> Select Category</option>
{% for category in categories %}
<option value="{{ category.id }}">
{{ category.name }}
</option>
{% endfor %}
</select>
</label>
<input type="submit" value="Select">
<label>
<select name="SelectProduct">
<option disabled="disabled" selected> Select Category</option>
{% for products in product %}
<option value="{{ products.id }}">
{{ products.name }}
</option>
{% endfor %}
</select>
</label>
<input type="submit" value="Select">
</form>
<div>
{% for message in messages %}
<h1>{{ message }}</h1>
{% endfor %}
</div>
<form method="post">
{% csrf_token %}
<label for="description">Description
<input type="text" name="description" id="description" placeholder=" decription ">
</label>
<label for="quantity">Quantity
<input type="number" name="quantity" id="quantity" placeholder="Enter the quantity of product">
</label>
<button type="submit">Submit</button>
</form>
{% end block %}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。