python, создайте динамические значения html-имен.
Мне нужна небольшая помощь. Я зацикливаюсь на объектах, которые находятся в БД, и рендеринг всех объектов в шаблон, пока все хорошо. но я хочу, чтобы каждое отображаемое поле имени html должно иметь другое имя, чтобы я мог ссылаться на все из них последними. мой код такой:
{% for p in products %}
<input type="number" name="name1" value="{{p.arg1}}" size="12"/>
<input type="number" name="name2" value="{{p-arg2}}" size="12"/>
{% endfor %}
но если у меня есть 4 объекта в БД, то у меня будет 8 визуализированных полей ввода в шаблоне, но все они будут иметь значение "name" как name1 и name2, возможно ли динамическое создание 8 различных имен, чтобы я мог ссылаться всем им, на мой взгляд, снова...
Спасибо
1 ответ
Решение
Используйте переменную forloop.counter
{% for p in products %}
<input type="number" name="name-{{forloop.counter}}-arg1" value="{{p.arg1}}" size="12"/>
<input type="number" name="name-{{forloop.counter}}-arg2" value="{{p.arg2}}" size="12"/>
{% endfor %}
forloop.counter
1-индексирован. Также есть forloop.counter0
для индексов, начинающихся с 0.
Вы уверены, что django formsets - это не то, что вам нужно?