过滤器的本质是函数。当模板内置的过滤器不能满足需求,可以自定义过滤器。自定义过滤器有两种实现方式:

  • 一种是通过Flask应用对象的 add_template_filter 方法
  • 通过装饰器来实现自定义过滤器

重要:自定义的过滤器名称如果和内置的过滤器重名,会覆盖内置的过滤器。

方式一

def do_filterdoublesort(ls): #自定义一个方法
return ls[::2]
app.add_template_filter(do_filterdoublesort,'db2')
讲我们自定的方法注册在add_template_filter中,第二个参数是
使用自定义过滤器的别名

方式二

@app.template_filter('db2')   #在装饰器工厂中给自定义的过滤器取名
def do_filterdoublesort(ls): #会自动注册
return ls[::-2]

最新文章

  1. git常用的命令集合
  2. Java Bean
  3. NOIp 2011 mayan游戏 搜索
  4. [原]对Linux环境下任务调度一点认识
  5. R语言多重共现性的检测
  6. getDefinitionByName与ApplicationDomain.getDefinition
  7. SaaS系列介绍之八: SaaS的运营模式
  8. CoreAnimation4-隐式动画和显式动画
  9. LeetCode_Wildcard Matching
  10. 【剑指offer】替换字符串中的空格
  11. python----特性003
  12. Git教程--Git安装和版本库的创建
  13. EXT2/EXT3文件系统(二)
  14. PoolBoy
  15. LNAMP 中的PHP探针
  16. 第25篇 jQuer快速学习(上)---选择器和DOM操作
  17. jQuery源码逐行分析学习02(第一部分:jQuery的一些变量和函数)
  18. further occurrences of HTTP header parsing errors will be logged at DEBUG level.错误
  19. 比较Fink, macports 跟 homebrew
  20. 超实用的JavaScript代码段 Item2 --伸缩菜单栏

热门文章

  1. CSS3中的Flexbox弹性布局(二)
  2. Anaconda教程
  3. 收缩事务日志(sqlserver)
  4. 模拟ArrayList
  5. windows10 、eclipse kepler配置maven环境
  6. fastcgi+lighttpd+c语言 实现搜索输入提示
  7. hiho 第155周 任务分配
  8. 什么是微信小程序
  9. Python-Url编码和解码
  10. umlの类图