我正在使用web.py,并且我制作了一个通用的数据视图模板,像这样,结果是一个db查询结果,列是一个包含列名的列表:
$def with(results,columns)
$var title:All data
<table class="table table-striped">
<thead>
$for f in columns:
<th>$f</th>
</thead>
<tbody>
$for r in results:
<tr>
$for f in columns:
<td>$r.$f</td>
</tr>
</tbody>
</table>
<hr />
表的头部显示良好,但表格数据总是显示:
<Storage {'remark': u'', 'cid': 32, 'created': datetime.date(2016, 5, 23), 'id': 2}>.id
如何显示表格的数据? 感谢。
答案 0 :(得分:0)
使用:
$for f in columns:
<td>$r[f]</td>
而不是$r.$f
。
检查您的输出示例,并注意您确实看到$r
(完整行)的值后跟一个句点,后跟$f
的值,在这种情况下为“id”
模板有点棘手,但想想“一旦你进入python领域,你就不会用$进一步转义变量。”所以在这里,将其可视化为$(r[f])
,尽管$r[f]
是完全合法的。