掃二維碼與項(xiàng)目經(jīng)理溝通
我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
首先我們看看如何原始的HTML代碼插入Flask應(yīng)用:

from flask import Flask
app = Flask(__name__)@app.route('/greet')def greet():
user = {'username': 'John', 'age': "20"} return '''
Templating
Hello, ''' + user['username'] + '''!, you’re ''' + user['age'] + ''' years old.
'''if __name__ == '__main__':
app.run(debug = True,port=8080)在上面的代碼中,我們使用拼接的HTML字符串來(lái)展示user字典的數(shù)據(jù)。現(xiàn)在訪問(wèn)http://127.0.0.1:8080/greet:
拼接HTML字符串非常容易出錯(cuò),因此Flask使用Jinja 2模板引擎來(lái)分離數(shù)據(jù)邏輯和展示層。
相關(guān)推薦:《python視頻教程》
我們將模板文件按如下路徑放置:
Apps folder /app.py templates |-/index.html
使用模板時(shí),視圖函數(shù)應(yīng)當(dāng)返回render_template()的調(diào)用結(jié)果。例如下面的代碼片段渲染模板index.html,并將渲染結(jié)果作為視圖函數(shù)的返回值:
from flask import Flask, render_template
app = Flask(__name__)@app.route('/hello')def hello():
return render_template('index.html', name="Alex")if __name__ == '__main__':
app.run(debug = True)在上面的代碼中,模板文件index.html依賴于變量name,其內(nèi)容如下:
{% if name %} Hello {{ name }}.
{% else %} Hello.
{% endif %} 模板文件的語(yǔ)法擴(kuò)充了HTML,因此可以使用變量和邏輯。
在瀏覽器中訪問(wèn)http://127.0.0.1:8080/hello/alex:

我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流