python – 如何构建数据以在Flask中轻松构建HTML表
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 如何构建数据以在Flask中轻松构建HTML表,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1643字,纯文字阅读大概需要3分钟。
内容图文
我试图从存储在表中的数据创建HTML表.我的数据从表中读取并转换为列表的字典,例如:
x = {'date':[u'2012-06-28', u'2012-06-29', u'2012-06-30'], 'users': [405, 368, 119]}
我的目标是为任意列表长度创建一个具有以下结构的HTML表:
<table>
<thead>
<th>Date</th>
<th>Users</th>
</thead>
<tbody>
<tr>
<td>2012-06-28</td>
<td>405</td>
</tr>
<tr>
<td>2012-06-29</td>
<td>368</td>
</tr>
<tr>
<td>2012-06-30</td>
<td>119</td>
</tr>
</tbody>
</table>
我在Flask模板中尝试过两种不正确的方法:
<tbody>
{% for line in x %}
<tr>
<td>{{ x.date|tojson|safe }}</td>
<td>{{ x.users }}</td>
</tr>
{% endfor %}
</tbody>
这会将整个列表打印到每列中.
和:
{% for date in x.date %}
<tr><td>{{ date|tojson|safe }}</td></tr>
{% endfor %}
{% for users in x.users %}
<tr><td>{{ users }}</td></tr>
{% endfor %}
这只是将所有内容打印到第一列.
这些实验和许多其他死角让我相信,根据我目前的数据结构,没有简单的方法来构建表格.
鉴于此,我有两个问题:
1)如何使用我当前的数据结构构建表格?
2)为此用例构建数据的标准或理想方法是什么?
提前致谢.
解决方法:
如您所说,您可以更改数据结构,也可以更改模板代码.这是保持当前结构的一种方法:
{% for row_index in range(x['date']|count) %}
<tr>
<td>{{ x['date'][row_index]|tojson|safe }}</td>
<td>{{ x['users'][row_index] }}</td>
</tr>
{% endfor %}
或者你可以在python中重构你的数据:
x = zip(x['date'], x['users'])
然后使用此模板:
{% for row in x %}
<tr>
<td>{{ row[0]|tojson|safe }}</td>
<td>{{ row[1] }}</td>
</tr>
{% endfor %}
您还可以构建数据,以便模板不依赖于单元格的顺序:
from itertools import izip
x = [dict(date=d, user=u) for d, u in izip(x['date'], x['users'])]
然后您可以像这样访问您的数据:
{% for row in x %}
<tr>
<td>{{ row['date']|tojson|safe }}</td>
<td>{{ row['user'] }}</td>
</tr>
{% endfor %}
内容总结
以上是互联网集市为您收集整理的python – 如何构建数据以在Flask中轻松构建HTML表全部内容,希望文章能够帮你解决python – 如何构建数据以在Flask中轻松构建HTML表所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。