jinja2中的过滤器

flask中使用过滤器

后台传递参数 message 到前台

def index():
	message = 'hello word'
	return render_template('index.html', message=message)

前台页面 index.html

<p>{{ message }}</p>
正常显示结果
hello word
使用过滤器
<p>{{ message|title }}</P>
Hello Word

变量名后面加一根竖线,再跟上过滤器的名字就能使用特定的过滤器修改变量了。列如上面使用title过滤器修饰 hello world 就能让单词的首字母大写显示。

常用的过滤器

过滤器名 说明
safe 渲染时不转义
capitalize 把值的首字母转换成大写,其他字母转换成小写
lower 把值转换成小写形式
upper 把值转换成大写形式
title 把值中每个单词的首字母都转换成大写
trim 把值的首尾空格都去掉
striptags 渲染前把值中的所有的HTML标签都删掉

safe 过滤器值得特别说明一下。默认情况下,出于安全考虑, Jinja2 会转义所有变量。例如, 如果一个变量的值为 ‘<h1>Hello</h1>’, Jinja2 会将其渲染成 '&lt;h1&gt;Hello&lt;/ h1&gt;',浏览器能显示这个 h1 元素,但不会进行解释。很多情况下需要显示变量中存储的 HTML 代码,这时就可使用 safe 过滤器。

完整的过滤器列表可在 Jinja2 文档 http://jinja.pocoo.org/docs/templates/#builtin-filters 中查看。

猜你喜欢

转载自blog.csdn.net/weixin_42600599/article/details/83894002