十三:jinja2过滤器之default过滤器和or过滤器

Posted zhongyehai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了十三:jinja2过滤器之default过滤器和or过滤器相关的知识,希望对你有一定的参考价值。

 

 

在模板里面有时候需要对传过来的数据进行一些处理,jinja2有一些内置的过滤器可以进行处理。类似于python内置函数,通过 “|” 进行使用,详见jinja2官方文档

 

使用方法:{{ 变量名|过滤器名 }}

如:内置过滤器abs:作用为返回一个数的绝对值

技术图片

技术图片

技术图片

 

 

default过滤器:如果传过来的数据有此变量,则展示此变量,否则,展示一个自定义的默认值

 

第一种情况:字段不存在

默认当要展示的值没有的时候,是不渲染,也不报错的

技术图片

技术图片

技术图片

 

这种情况,可以使用default过滤器,如:如果传过来的值没有c这个字段,就展示一个默认值

技术图片

技术图片

 

第二种情况:字段存在,值为:‘‘、None、False

技术图片

技术图片

技术图片

 

这种情况也是可以设置默认值的,参数为:boolean=True

技术图片

技术图片

 

 

or:使用default过滤器的代码会很长,以上情况,也可以使用or实现,类似于python的or

无字段:

技术图片

技术图片

 

有字段,无值

技术图片

技术图片

以上是关于十三:jinja2过滤器之default过滤器和or过滤器的主要内容,如果未能解决你的问题,请参考以下文章

10_jinja2模板过滤器

Flask的Jinja2模版过滤器

3 jinja2模板

SpringCloud - Spring Cloud 之 Gateway网关,Route路由,Predicate 断言,Filter 过滤器(十三)

BetaFlight模块设计之十三:Gyro过滤任务分析

Flask框架从入门到精通之模型查询(十三)