我决定学习金字塔并选择Mako作为模板语言。我从视图中获得了一个原始sql结果的列表,如下所示: [{'sample':'R1_Y200.fq','study':'GaoQiang1'},{'sample':'R1_Y300.fq','study':'GaoQiang2'},...]
view.py:
@view_config(route_name='example', renderer='example.html')
def templet_test(request):
...
return {'result':search_result}
html:
<html>
...
<table border="1" width="500" align="center" cellpadding="0">
<tr>
<th >study</th>
<th >sample</th>
</tr>
% for item in result:
<tr>
<td valign=top align=center> ${item['study']} </td>
<td valign=top align=center> ${item['sample']} </td>
</tr>
% endfor
</table>
...
</html>
但它没有成功。我收到了这条消息: “内部服务器错误
服务器遇到意外的内部服务器错误
(由女服务员生成)“
如何解决?
答案 0 :(得分:0)
真正的异常显示在控制台中 - 它将包含您的问题的原因。 您可能还希望在金字塔中启用调试工具栏,以便在开发过程中使用更友好的错误处理方式。
另外通过查看你的模板 - 我假设你使用sqlalchemy进行数据库交互,你可能想要访问像item.study这样的结果行,而不是像item ['study']那样。
如果没有适当的回溯,那就像我猜的那么多。