jijia2中的过滤器使用

###什么是过滤器

模板中有些变量没有办法直接拿来使用,需要处理之后才能使用。比如变量是小写的,我想用大写的。过滤器就是将没办法直接使用的变量,转换成能使用的函数。原理,就是将变量作为对象,传给函数,然后输出符合需求的变量。

###过期使用方法

固定格式为 ,{{variable|过滤器}}

###常用的过滤器

1.取参数的绝对值   abs

2.个性签名,

字典设置,为空的字符串
'signature1' : '', #如果直接设置 为  none,没有办法直接转化为bool,所以得用空的字符串  

调用的时候,需要使用  default过滤器

<p>个性签名默认是{{ signature1|default('天下武术出少林',boolean = True) }}</p>

 3.escape 转义字符

jinjia2中自动开转义。什么叫转义:html代码中,将 <>中间的内容,会认为是一个标签。如果变量中有这个,jinjia2会转义成字符串

如果想展示出来,需设置自动转义终止,语法为:
    {% autoescape off %}
    <p> {{ signature2 }},转义字符关闭,显示alert</p>
    {% endautoescape %}

以上闭合标签,支持在标签内的全部关闭自动转义。

4.safe

支持针对某个参数,单独关闭转义。基本语法 {{ signature2|safe }}

5.first  last  length

first可读取一个序列中一个值,,如  {{ person|first }}</p>,其实用{{ person[0] }},也可以实现

last获取最后一个值

length  返回列表 或字典 长度

6.formart 格式化字符串

<p>format格式化字符串,,如  {{"我的的名字是 %s"|format('hebi123') }}</p>

7.常用的还会有,join,int,string、lower,upper等

8.truncate,截取长度的字符串,比如hebi12312312,显示 hebi…

基本语法为 

<p>truncate截取一定长度的字符串,,,如  {{signature|truncate(length=5) }}</p>

猜你喜欢

转载自blog.csdn.net/hebi123s/article/details/81867663
今日推荐