在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中使用模版的主要内容,如果未能解决你的问题,请参考以下文章

网站后端_Python+Flask.0014.FLASK模版相关之使用JinJa2模版渲染?

flask 模版- 时间 Flask-Moment

使用Visual Studio Code自定义代码模版

Flask教程-模版

Flask模版语言Jinja2 򀍊

Flask模版语言Jinja2 򊂵