我目前在我的模板中有这个for循环:
{% for i in 1234|make_list %}
我想在循环内获得类似的东西:
{{ form.answer_{{ i }} }}
我知道上面的行无效(它引发了TemplateSyntaxError),但我想知道是否有任何方法可以使用i的值作为我的其他变量名的一部分。
答案 0 :(得分:2)
首先,您需要custom template filter来模仿getattr()
功能,请参阅:
然后,您需要add
template filter进行字符串连接:
{% load getattribute %}
{% for i in 1234|make_list %}
{% with "answer_"|add:i as answer %}
{{ form|getattribute:answer }}
{% endwith %}
{% endfor %}