为什么 max_height 会产生无效的语法错误?
main.py
max_height = 70
template_values = {
'max_height': max_height # syntax error
...
}
的index.html
<html>
<body>
{% for person in people %}
{% if person.filter("height <", max_height %)
<b>{{ person.first_name }}</b>
<b>{{ person.last_name }}</b>
<b>{{ person.city }}</b>
<b>{{ person.birth_year }}</b>
<b>{{ person.height }}</b>
<hr></hr>
{% endif %}
{% endfor %}
</body>
</html>
编辑1 这是 main.py :
中的类MainPageclass MainPage(webapp2.RequestHandler):
def get(self):
people_query = Person.all()
people = people_query.fetch(10)
max_height = 70
template_values = {
'people': people
'max_height': max_height
}
template = jinja_environment.get_template('index.html')
self.response.out.write(template.render(template_values))
答案 0 :(得分:1)
这一行:
{% if person.filter("height <", max_height %)
应该是这样的:
{% if person.filter("height <", max_height) %}
另外,我建议不要在模板本身中使用任何类似的过滤逻辑。将该代码放入您的应用程序代码中,然后使用该模板呈现HTML。