Flask学习之旅——2.2 模板过滤器
前言
- 本文为《知了传课——Jinja2模版过滤器》的学习笔记。
- 原文地址:第三节:模板过滤器 - Python框架Flask基础教程 - 知了传课 (zlkt.net)
Jinja2模版过滤器
什么是过滤器?
- 过滤器是通过管道符号(
|
)进行使用的,过滤器相当于是一个函数,把当前的变量传入到过滤器中,然后过滤器根据自己的功能,再返回相应的值,之后再将结果渲染到页面中。 - 例如:
{{ name|length }}
,将返回name的长度
常用的过滤器
过滤器 | 作用 |
---|---|
abs(value) | 返回一个数值的绝对值。 |
default(value,default_value,boolean=false) | 如果当前变量没有值,则会使用参数中的值来代替。boolean=False 默认是在只有这个变量为undefined 的时候才会使用default 中的值。 |
escape(value)或e | 转义字符,会将< 、> 等符号转义成HTML中的符号。 |
first(value) | 返回一个序列的第一个元素。 |
format(value,*arags,**kwargs) | 格式化字符串。 |
last(value) | 返回一个序列的最后一个元素。 |
length(value) | 返回一个序列或者字典的长度。 |
join(value,d=u’’) | 将一个序列用d 这个参数的值拼接成字符串。 |
safe(value) | 如果开启了全局转义,那么safe 过滤器会将变量关掉转义。 |
int(value) | 将值转换为int 类型 |
float(value) | 将值转换为float 类型。 |
lower(value) | 将字符串转换为小写。 |
upper(value) | 将字符串转换为小写。 |
replace(value,old,new) | 替换将old 替换为new 的字符串。 |
truncate(value,length=255,killwords=False) | 截取length 长度的字符串。 |
striptags(value) | 删除字符串中所有的HTML标签,如果出现多个空格,将替换成一个空格。 |
trim | 截取字符串前面和后面的空白字符。 |
string(value) | 将变量转换成字符串。 |
wordcount(s) | 计算一个长字符串中单词的个数。 |
更多过滤器可以查看官方手册:模板设计者文档 — Jinja2 中文手册 2.8 documentation (pythontab.com)