Django Template:如何修改for-loop标签中的值?

时间:2015-05-08 09:19:53

标签: python django templates for-loop

我想要做的很简单:我想显示一个HTML选择标记,其中包含值为1971~2020的选项标记。

以下是代码段:

Year<select name="selected_year">
{% for i in "x"|rjust:"50" %}
    <option value="{{ forloop.counter }}">{{ forloop.counter }}</option>
{% endfor %}
</select>

{{forloop.counter}}将显示1~50 我的问题是:如何显示1971~2020而不是? 有什么建议吗?

顺便说一句,for循环代码是从另一个问题引用的: Numeric for loop in Django templates

1 个答案:

答案 0 :(得分:1)

可以使用|add过滤器修改每个值:

<option value="{{ forloop.counter|add:1970 }}">{{ forloop.counter|add:1970 }}</option>

但不要这样做。在视图中使用range(1971, 2021)并将其传递给模板。