Python之使用jinja2过滤器

过滤器的作用可以对模板中的一些数据变量进行处理展示功能,自带了一些可用的功能属性方法,比如变量没有值可用设置一个默认值,设置图片的矢量占位图等功能

  • 关于使用:

    • 在模板中关于属性都是使用双括号来括起来{{ 变量 }},关于过滤器就是在变量之后添加竖号|{{ 变量 | 过滤 }}
  • 一些常用的过滤器方法:

    • abs(value):返回一个数值的绝对值。
    • default(value,default_value,boolean=false):如果当前变量没有值,则会使用参数中的值来代替。name|default('xiaotuo')——如果name不存在,则会使用xiaotuo来替代。boolean=False默认是在只有这个变量为undefined的时候才会使用default中的值,如果想使用python的形式判断是否为false,则可以传递boolean=true。也可以使用or来替换。
    • escape(value)或e:转义字符,会将<、>等符号转义成HTML中的符号。例如:content|escape或content|e。
    • first(value):返回一个序列的第一个元素。names|first。
    • last(value):返回一个序列的最后一个元素。示例:names|last。
    • format(value,arags,*kwargs):格式化字符串。例如以下代码:
      {{ "%s" - "%s"|format('Hello?',"Foo!") }}将输出:Helloo? - Foo!
    • length(value):返回一个序列或者字典的长度。示例:names|length。
    • join(value,d=u''):将一个序列用d这个参数的值拼接成字符串。
    • safe(value):如果开启了全局转义,那么safe过滤器会将变量关掉转义。示例:content_html|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):计算一个长字符串中单词的个数。


摘自原文地址

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,782评论 19 139
  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 4,745评论 0 5
  • 事情是这样的,我今天在帮一个朋友实现原生手写轮播图,然后我发现自己在获取一个元素的样式上出现了一点点小问题,就顺带...
    Katherine的小世界阅读 38,292评论 0 6
  • 今晚来到高碑店 王平杜彬来相见 一一八届总裁版 你我从此血脉连 这次分别只两天 你我彼此在思念 你在我的睡梦里 手...
    王京武阅读 1,014评论 0 2

友情链接更多精彩内容