jinja2 渲染的语法
语法 描述
{{ }} 变量,后端定义的数据,直接使用或者使用他的方法
{% %} 具有指定的语法含义,会使用到变量,但是可以实现小的功能,比如:判读,循环
变量代码样例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>hello world 这是个{{ name.upper() }},他{{ age }}岁</h1>
<h1>hello world 这是个{{ name.replace("i","I") }},他{{ age }}岁</h1>
<h1>hello world 这是个{{ name.upper() }},他{{ age }}岁,他喜欢 {{ like.0 }},{{ like.1 }}</h1>
<h1>hello world 这是个{{ name.upper() }},他{{ age }}岁,他喜欢 {{ like.0 }},{{ like.1 }},他的身高{{ tx.h }},体重{{ tx.w }}</h1>
</body>
</html>
循环 for i in list
@app.route("/")
def index():
is_login = 'unknow'
person_list = [
{"name": "张三", "age": 10, },
{"name": "李四", "age": 20, },
{"name": "王五", "age": 30, },
{"name": "赵六", "age": 40, },
{"name": "田七", "age": 50, },
{"name": "冯八", "age": 60, }
]
return render_template("index_label.html",**locals())
<table>
<tr>
<th>姓名</th>
<th>年龄</th>
</tr>
{% for p in person_list %}
<tr>
<td>{{ p.name }}</td>
<td>{{ p.age }}</td>
</tr>
{#for 循环语句结尾 必须写{% endfor %}} 否者报错}#}
{% endfor %}
</table>
效果图: