在jinja2模板中获取列表的长度
如何获取jinja2模板列表中的元素数目?
例如,在Python中:
print(template.render(products=[???]))
并在jinja2
<span>You have {{what goes here?}} products</span>
<span>You have {{products|length}} products</span>
你也可以在expression式中使用这个语法
{% if products|length > 1 %}
jinja2的内置filterlogging在这里 ; 具体来说,正如您已经发现的那样, length
(及其同义词count
)被logging为:
返回序列或映射的项目数。
因此,正如您发现的那样,您的模板中的{{products|count}}
(或同等地{{products|length}}
)将会给出“产品数量”(“length of list”)
亚历克斯的评论看起来不错,但我仍然与使用范围混淆。 以下工作为我在使用长度范围内的条件工作。
{% for i in range(0,(nums['list_users_response']['list_users_result']['users'])| length) %} <li> {{ nums['list_users_response']['list_users_result']['users'][i]['user_name'] }} </li> {% endfor %}