我已经遵循了一些教程(第一瓶),但是我的代码没有按预期工作。基本上我想用这种方式生成一个html表:
模板以这种方式提供:
return template('template', data=result)
我模板中的代码片段:
%for item in data.data:
%if ("X" in c_label and "Y" not in p_label and "Z" not in p_label):
<tr>
<td>{{child}}</td>
<td>{{parent}}</td>
</tr>
%elif ("X" in c_label and "Y" in p_label):
<tr>
<td>{{child}}</td>
<td>{{parent}}</td>
</tr>
%elif ("X" in c_label and "Z" in p_label):
<tr>
<td>{{child}}</td>
<td>{{parent}}</td>
</tr>
%elif "W" in c_label:
<tr>
<td>{{child}}</td>
<td>{{parent}}</td>
</tr>
%elif "U" in c_label:
<tr>
<td>{{child}}</td>
<td>{{parent}}</td>
</tr>
%elif "Z" in c_label:
<tr>
<td>{{child}}</td>
<td>{{parent}}</td>
</tr>
%end
</table>
问题是python即使在for
之后仍然继续运行%end
周期。我在生成的页面中看到过它:
<table>
<tr>
<td>U</td>
<td>I</td>
</tr>
</table>
<tr>
<td>X</td>
<td>U</td>
</tr>
</table>
<tr>
<td>U</td>
<td>I</td>
</tr>
</table>
因此,出于某种原因,它每次迭代都会对</table>
进行修改,这完全是最终页面的主要内容:)。
提前致谢!
彼得
答案 0 :(得分:0)
感谢kwinkunks,我已将其识别为SimpleTemplate引擎。
答案在这里: http://bottlepy.org/docs/0.11/stpl.html
e.g:
<div>\\
%if True:
<span>content</span>\\
%end
</div>
正如kwinkunks建议的那样,if
也必须以end
结束。