文章内容

2018/7/31 15:47:10,作 者: 黄兵

flask 表格计数

如果有一个表单,第一列需要计数,你该怎么做?

有人说如果数据是从数据库读取出来的,可以使用id。但是这里存在一个问题,如果使用的是倒排序,那么出来的编号是从大到小排列的,这么反人类的设计实在是不可取。

是不是有更好的方法?

可以使用如下方式,看代码:

<tbody>
{% for item in list_four %}
<tr>
<td>{{ loop.index }}</td>
{% if item.PhoneNumber|length <9 %}
<td>{{ item.PhoneNumber }}</td>
{% else %}
<td> {{ item.PhoneNumber[:item.PhoneNumber|length - 8] + '****' + item.PhoneNumber[item.PhoneNumber|length - 4:] }} </td>
{% endif %}
<td> {{ item.Content }} </td>
<td>
<time>{{ item.SMS_ReceiveTime }}</time>
</td>
</tr>
{% endfor %}
</tbody>

这里使用的是{{ loop.index }},具体的介绍看下面:

变量描述
loop.index循环的当前迭代。(1索引)
loop.index0循环的当前迭代。(0索引)
loop.revindex循环结束时的迭代次数(1个索引)
loop.revindex0循环结束时的迭代次数(0索引)
loop.first如果第一次迭代,则为True。
loop.last如果最后一次迭代则为真。
loop.length序列中的项目数。
loop.cycle辅助函数,用于在序列列表之间循环。请参阅以下说明。
loop.depth指示当前呈现的递归循环的深度。从1级开始
loop.depth0指示当前呈现的递归循环的深度。从0级开始
loop.previtem循环的上一次迭代中的项目。在第一次迭代期间未定义。
loop.nextitem循环的以下迭代中的项。在上一次迭代期间未定义。
loop.changed(* VAL)如果先前使用不同的值调用(或根本不调用),则为True。

最后效果如图:


参考资料:Template Designer Documentation


黄兵个人原创。

转载请注明出处:黄兵个人博客 - flask 表格计数

分享到:

发表评论

评论列表