如何在jinja2模板中获取列表中的元素数量?
例如,在Python中:
例如,在Python中:
print(template.render(products=[???]))
而在jinja2中
<span>You have {{what goes here?}} products</span>
Alex的评论看起来很好,但我还是对使用range感到困惑。 在使用长度为范围的for条件下,以下代码对我有效。
{% 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 %}
{% for user in nums['list_users_response']['list_users_result']['users'] %} <li>{{ user['user_name'] }} </li> {% endfor %}
- dmitry_romanov我曾经遇到过一个None长度的问题,导致了内部服务器错误:TypeError: object of type 'NoneType' has no len()。
我的解决方法是,如果对象是None,则显示0,并计算其他类型的长度,比如在我的情况下是list:
{{'0' if linked_contacts == None else linked_contacts|length}}
{% for i in range(array|length) %}
array[i]
{% endfor %}
<span>You have {% for n in products %}{% if loop.index == 1 %}{{ loop.length }}{% endif %}{% endfor %} products</span>
{% set item_count = items | length %}
,只要items
是一个列表、字典等。 - kbolino{{ form.select_field(size=5 if form.select_field.choices|count > 5 else form.select_field.choices|count) }}
。 - Filipe Bezerra de Sousa