Django Post-request внутри цикла for-loop не работает
Я застрял на странице, содержащей два пост-запроса, один из которых находится внутри цикла for.
У пользователя есть входной файл, который использует функцию автозаполнения. Эта функция использует модель shop-Model в Django. После отправки, товар будет добавлен в модель Shopping_List-Model в Django. Он будет отображаться в другом div страницы. В настоящее время это работает без проблем.
Затем пользователь должен иметь возможность удалить продукт из списка, нажав на кнопку. Но кнопка не работает, она не обрабатывает пост-запрос. Я также пробовал различные elif-Statements (например, elif request.POST["shop_delete"]), но ни один из них не сработал. Обратите внимание, поскольку я не понял, как заставить кнопку работать, действие содержит только print("delete"). Я бы написал необходимый код после этого.
Любые предложения будут высоко оценены! Большое спасибо заранее!
Вот мой код:
HTML
<div>
<!--Input field and autocomplete-->
<form id="product_add" action="{% url 'index' %}" method="post">
{% csrf_token %}
<input type="text" name="shop_product" id="shop_product">
<!--Code for autocomplete-->
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script>
$(function () {
$("#shop_product").autocomplete({
source: "{% url 'index' %}",
minLength: 2
});
});
</script>
<input type="submit" name="button_add" value="Add">
</form>
</div>
<div>
<table>
{% for item in items %}
<tr>
<form id="shop_delete" action="{% url 'index' %}" method="post">
<td name="product" id="product">{{ item.product }}</td>
<td><i class="cil-x" type="submit"></i></td>
</form>
</tr>
{% endfor %}
</table>
</div>
views.py
def index(request):
if request.method == "POST":
if request.POST["button_add"] == "Add":
user = request.user
product = request.POST["shop_product"]
date=datetime.date.today()
if product != "": Shopping_List.objects.create(user=user, date=date, product=product)
else:
print("delete")
if 'term' in request.GET:
qs = Shop.objects.filter(product__icontains=request.GET.get('term'))
items = list()
for product in qs:
items.append(product.product)
# titles = [product.title for product in qs]
return JsonResponse(items, safe=False)
items = Shopping_List.objects.all().filter(user=request.user, date=datetime.date.today())
return render(request, "index.html", {
"items": items
})