跟上一篇文章一樣的內容抗果,F(xiàn)lask默認支持的模板是jinja2
jinja2簡單實用:
1 在Jinja2模板中扮授,我們用{{ name }}表示一個需要替換的變量潜叛。很多時候虹钮,還需要循環(huán)铜跑、條件判斷等指令語句因妙,在Jinja2中痰憎,用{% ... %}表示指令
2 循環(huán)輸出頁碼:
{% for i in page_list %}
<a href="/page/{{ i }}">{{ i }}</a>
{% endfor %}
- 3 其他常用模板:
除了Jinja2票髓,常見的模板還有:
Mako:用<% ... %>
和${xxx}
的一個模板;
Cheetah:也是用<% ... %>
和${xxx}
的一個模板铣耘;
Django:Django是一站式框架洽沟,內置一個用{% ... %}
和{{ xxx }}
的模板。
主工程代碼:
# @Time : 2017/10/14 17:22
# @Author : 蛇崽
# @Email : 643435675@QQ.com
# @File : FlaskTempletes.py MVC模板類
from flask import Flask
from flask import request
from flask import render_template
app = Flask(__name__)
@app.route('/',methods=['GET','POST'])
def home():
return render_template('home.html')
@app.route('/signin',methods=['GET'])
def signin_form():
return render_template('form.html')
@app.route('/signin',methods=['POST'])
def signin():
username = request.form['username']
password = request.form['password']
if username == 'admin' and password == 'password':
return render_template('sign_ok.html',username=username,password=password)
return render_template('form.html',message='Bad username or password',username=username)
if __name__ == '__main__':
app.run()
templetes與py同級.png
各HTML代碼截圖:
三個HTML.png