0
点赞
收藏
分享

微信扫一扫

python框架------Flask基础教程--2.1模板简介

1kesou 2022-03-22 阅读 127


模板简介:

模板是一个​​web​​​开发必备的模块。因为我们在渲染一个网页的时候,并不是只渲染一个纯文本字符串,而是需要渲染一个有富文本标签的页面。这时候我们就需要使用模板了。在​​Flask​​​中,配套的模板是​​Jinja2​​​,​​Jinja2​​​的作者也是​​Flask​​​的作者。这个模板非常的强大,并且执行效率高。以下对​​Jinja2​​做一个简单介绍!

一、Flask渲染Jinja模板:

要渲染一个模板,通过​​render_template​​方法即可,以下将用一个简单的例子进行讲解:

from flask import Flask,render_template
app = Flask(__name__)

@app.route('/about/')
def about():
return render_template('about.html')

当访问​​/about/​​​的时候,​​about()​​​函数会在当前目录下的​​templates​​​文件夹下寻找​​about.html​​​模板文件。如果想更改模板文件地址,应该在创建​​app​​​的时候,给​​Flask​​​传递一个关键字参数​​template_folder​​,指定具体的路径,再看以下例子:

from flask import Flask,render_template
app = Flask(__name__,template_folder=r'C:\templates')

@app.route('/about/')
def about():
return render_template('about.html')

以上例子将会在C盘的​​templates​​文件夹中寻找模板文件。还有最后一点是,如果模板文件中有参数需要传递,应该怎么传呢,我们再来看一个例子:

from flask import Flask,render_template
app = Flask(__name__)

@app.route('/about/')
def about():
# return render_template('about.html',user='zhiliao')
return render_template('about.html',**{'user':'zhiliao'})

以上例子介绍了两种传递参数的方式,因为​​render_template​​​需要传递的是一个关键字参数,所以第一种方式是顺其自然的。但是当你的模板中要传递的参数过多的时候,把所有参数放在一个函数中显然不是一个好的选择,因此我们使用字典进行包装,并且加两个​​*​​号,来转换成关键字参数。


清澈的爱,只为中国


举报

相关推荐

0 条评论