下面是一个jinjia2的简单模板的例子:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>jinjia2 Demo</title>
</head>
<body>
<ul>
{% for item in navigation %}
<li><a href="{{ item}}">网址:{{ item }}</a> </li>
{% endfor %}
</ul>
<h1>
hello world
</h1>
{{ a_variable }}
{# 我是注释 #}
</body>
</html>
{{...}}:用于输出变量或者表达式,本例子中为item,a_variable等
{{%%}}:用于逻辑控制,本例子中for循环所用到的
{#...#}:用于注释,再渲染后的html中不会出现。
渲染后生成的页面和html代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>jinjia2 Demo</title>
</head>
<body>
<ul> <li><a href="http://baidu.com">网址:http://baidu.com</a> </li> <li><a href="http://www.goolge.com">网址:http://www.goolge.com</a> </li> </ul>
<h1>
hello world
</h1>
Developer </body>
</html>
后端用render_template渲染模板
from flask import Flask
from flask import render_template
app = Flask(__name__) @app.route('/')
def hello_world():
return 'Hello World!' @app.route("/jinjia2")
def jinjia2demo(): return render_template("jinjia2.html",a_variable='Developer',navigation=["http://baidu.com","http://www.goolge.com"]) if __name__ == '__main__':
app.run()