【问题标题】:count number of rows in flask templates计算烧瓶模板中的行数
【发布时间】:2013-07-18 08:04:14
【问题描述】:
我已将视图中的变量发送到包含数据库数据的模板
这是我在我的模板中使用的
{% for i in data %}
<tr>
<td>{{i.id}}</td>
<td>{{i.first_name}}</td>
<td>{{i.last_name}}</td>
<td>{{i.email}}</td>
</tr>
{% endfor %}
这个循环中有七个条目,我需要显示计数租约建议我该怎么做
【问题讨论】:
标签:
python
templates
loops
count
flask
【解决方案1】:
在循环中,您可以访问一个名为 loop 的特殊变量,您可以看到带有 {{ loop.length }} 的项目数
这就是循环辅助变量所能做的一切:
loop.index 循环的当前迭代。 (1 个已编入索引)
loop.index0 循环的当前迭代。 (0 个索引)
loop.revindex从循环结束的迭代次数(1个索引)
loop.revindex0从循环结束的迭代次数(0索引)
loop.first如果是第一次迭代则为真。
loop.last 如果最后一次迭代则为真。
loop.length序列中的项目数。
loop.cycle 在序列列表之间循环的辅助函数。请参阅下面的说明。
loop.depth 表示当前渲染的递归循环深度。从 1 级开始
loop.depth0 表示当前渲染在递归循环中的深度。从 0 级开始
编辑:
要查看 de for 循环之外的项目数,您可以从视图中生成另一个变量,例如 count_data = len(data),或者您可以使用 length 过滤器:
Data count is {{ data|length }}:
{% for i in data %}
<tr>
<td>{{i.id}}</td>
<td>{{i.first_name}}</td>
<td>{{i.last_name}}</td>
<td>{{i.email}}</td>
</tr>
{% endfor %}
【解决方案2】:
{{ 数据|长度 }}
这很完美,我们不需要在循环中使用它,只需在模板中的任何位置使用
即使我们不需要从视图中发送另一个变量