使用渲染模板的好处是:将业务逻辑(访问数据库..),和表现逻辑(浏览器看到的html)分离开来,易于维护。
默认情况下:Flask在程序文件加中的templates子文件夹中寻找模板。
demo(请先确认你已经安抓了flask以及flask所依赖的库,安装教程见前面的文章):
mkdir jinja2template
cd jinja2template
mkdir templates
cd templates
vi index.html
<h1>Hello, World!<h1>
vi user.html
<h1>Hello, {{name}}!<h1>
模板中使用的{{name}}结构表示一个变量,它是一种特殊的占位符,告诉模板引擎这个位置的值从渲染模板时使用的数据中获取
cd ..vi hello.py
from flask import Flask, render_template
app=Flask(__name__)
@app.route('/')
def index():
return render_template('index.html')
@app.route('/user/<name>')
def user(name):
return render_template('user.html', name=name)
if __name__=='__main__':
app.run(debug=True)
左边的name表示参数名,右边的name表示当前作用域中的变量(用户输入的值,如steven)
python hello.py
浏览器访问: localhost:5000和lcoahost:5000/user/steven