在Flask中使用模版
Posted 测试开发之美
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Flask中使用模版相关的知识,希望对你有一定的参考价值。
为了降低系统开发过程的耦合性和复杂性,Flask提供了模版的功能,默认使用Jinjia2模版引擎。它能完全支持unicode,并具有集成的沙箱执行环境。使用jinjia2模板引擎的好处在于: 渲染速度快、方便、可进行模板继承,让模板重复使用、可在模板中进行宏、可进行模板直接的导入。那么在Flask如何使用模版,进行Web开发呢?下面通过一个具体实例来学习:
添加一个模版
首先在上一次创建的项目中,找到templates目录,在这个目录下,创建一个index.html文件。文件内容如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{{ title }}</title>
</head>
<body>
{{ user.username }}
</body>
</html>
文件中”{{ }}”就是用到的模版引擎的语法,在渲染页面的时候,会解析成为真实的值。在Flask中,我们如何使用模版index.html呢?
使用模版
在主程序app.py中,导入render_template模块,然后添加函数get_name,我们使用render_template方法来完成模版的渲染。该方法的第一个参数是模版文件的名字,第二个参数是title、第三个参数是user。当然可以有多个参数。
from flask import Flask,render_template
app = Flask(__name__)
@app.route('/getname')
def get_name():
user = {'username': 'Jack yang'}
return render_template('index.html', title='首页', user=user)
if __name__ == '__main__':
app.run(debug=True)
模版渲染后的结果
完成之后,启动应用程序,在浏览器中访问,你将看到下面这样的结果。
上图中红色框中的内容,就是通过render_template方法传过去的值。这些值将替换index.html 中使用“{{}}”括起来对应的内容。如:‘title’会变成首页。
小结
添加一个模版,然后在Flask应用中使用模版,渲染模版。Jinjia2模版引擎,还有很多方法。如:模版继承、条件、循环等。可以在需要用的时候,看官方文档,进行学习。
以上是关于在Flask中使用模版的主要内容,如果未能解决你的问题,请参考以下文章