увеличьте переменную в шаблонах django

Все,

Как мы можем увеличить значение как следующее в шаблонах django,

  {{ flag =0 }}

  {% for op in options %}
   {{op.choices}}<input type="radio" name="template" id="template" value="template{{flag++}}"/>
  {% endfor %}

спасибо..

11
задан Hulk 24 March 2010 в 11:43
поделиться

3 ответа

Я не думаю, что вы должны изменять данные в своих шаблонах. В вашем конкретном случае вы можете вместо этого использовать переменную forloop.counter .

Например:

{% for op in options %}
  {{op.choices}}<input type="radio" name="template" id="template{{forloop.counter}}" value="template{{forloop.counter}}"/>
{% endfor %}

Также обратите внимание, что я добавил это число к атрибутам id тега . В противном случае у вас будет несколько входов с одним и тем же идентификатором.

РЕДАКТИРОВАТЬ: Я не заметил, что это был радиовход. Конечно, вы можете иметь одно и то же имя для каждого .

19
ответ дан 3 December 2019 в 03:04
поделиться

Вы явно не можете сделать это в шаблоне. Назначение переменных запрещено.

Однако, если все, что вам нужно, это счетчик в вашем цикле, вам просто нужно использовать {{forloop.counter}} .

7
ответ дан 3 December 2019 в 03:04
поделиться

Возможно, вы также захотите посмотреть на то, чтобы Django формы выдавали эти значения

3
ответ дан 3 December 2019 в 03:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: