使用 Python3 Flask 和 Jinja2 在带有索引的模板中循环
Loop in a template with index using Python3 Flask and Jinja2
我有一个具有以下方法的对象
myobject.get_extension_count()
myobject.get_extension(index)
使用普通 Python 我可以像这样循环
while i < cert.get_extension_count():
print(cert.get_extension(i).get_short_name().decode("UTF-8"))
print(cert.get_extension(i))
i += 1
如何在 Jinja2 模板中执行这样的循环?
编辑:
根据下面的建议,我得到了以下结果
<ul>
{%- for num in range(0, _cert.get_extension_count()) %}
<li>
{{ _cert1.get_extension(num).get_short_name().decode("UTF-8") }}:
{{ _cert1.get_extension(num) }}
</li>
{%- endfor %}
</ul>
使用 Jinja2,您可以执行 for 循环:
{% for var in list %}
whatever it is you need to do
{% endfor %}
然后您可以只使用范围函数,这正是 Python:
中可用的函数
{% for n in range(n) %}
这将以 1 计数。可能是比带增量的 while 更好的选择,因为“for”会自动为您增量。
我有一个具有以下方法的对象
myobject.get_extension_count()
myobject.get_extension(index)
使用普通 Python 我可以像这样循环
while i < cert.get_extension_count():
print(cert.get_extension(i).get_short_name().decode("UTF-8"))
print(cert.get_extension(i))
i += 1
如何在 Jinja2 模板中执行这样的循环?
编辑: 根据下面的建议,我得到了以下结果
<ul>
{%- for num in range(0, _cert.get_extension_count()) %}
<li>
{{ _cert1.get_extension(num).get_short_name().decode("UTF-8") }}:
{{ _cert1.get_extension(num) }}
</li>
{%- endfor %}
</ul>
使用 Jinja2,您可以执行 for 循环:
{% for var in list %}
whatever it is you need to do
{% endfor %}
然后您可以只使用范围函数,这正是 Python:
中可用的函数{% for n in range(n) %}
这将以 1 计数。可能是比带增量的 while 更好的选择,因为“for”会自动为您增量。