模板
1.Flask框架没有自己的模板,需要使用第三方jinja2模板。Jinja2模板和django中的模板用法几乎相同。解析变量使用{{}},标签使用{%%}
2.后台传递数据的格式使用的是关键字传参
3.前端解析普通变量格式: {{name}}
4.前端解析字典格式的变量:{{变量名.key}} 或者 {{变量名[‘key’]}}
5.前端解析列表格式的变量:{{变量名.索引}} 或者 {{变量名[index]}}
from flask import Flask,render_template
app=Flask(__name__)
@app.route('/index/')
def index():
userinfo={'name':'zs','age':20}
#直接使用关键字传参
#return render_template('index.html',name='zs',age=18)
return render_template('index.html',**userinfo)
# 向页面传递字典格式内容
@app.route('/index2/')
def index2():
userinfo = {'name': 'python', 'age': 20}
return render_template('index2.html',userinfo=userinfo)
# 像页面传递列表
@app.route('/index3/')
def index3():
lst=['zs','ls','ww']
return render_template('index3.html',lst=lst)
if __name__ == '__main__':
app.run()
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
首页...
<br>
姓名:{{ name }} >>>年龄:{{ age }}
</body>
</html>
index2.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
姓名:{{ userinfo.name }} 年龄:{{ userinfo.age }}
</body>
</html>
index3.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
{{ lst.0 }}<<-->>{{ lst[1] }}
</body>
</html>