可以以 HTML 的形式返回绑定到某个 URL 的函数的输出。例如,在以下脚本中, hello() 函数将使用 <h1> 标签呈现 ‘Hello World’。
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return '<html><body><h1>'Hello World'</h1></body></html>'
if __name__ == '__main__':
app.run(debug = True)
但是,从 Python 代码生成 HTML 内容很麻烦,尤其是在需要放置变量数据和 Python 语言元素(如条件或循环)时。这需要经常从 HTML 中转义。
这是可以利用 Flask 所基于的 Jinja2 模板引擎的地方。而不是从函数返回硬编码 HTML,可以通过 render_template() 函数呈现HTML文件。
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return render_template(‘hello.html’)
if __name__ == '__main__':
app.run(debug = True)
Flask 将尝试在 templates 文件夹中找到 HTML 文件,该文件存在于此脚本所在的文件夹中。
- Application folder
-