首页 > 其他 > 详细

flask自定义过滤器

时间:2019-10-18 09:54:26      阅读:74      评论:0      收藏:0      [点我收藏+]

flask自定义过滤器

过滤器的本质是函数。当模板内置的过滤器不能满足需求,可以自定义过滤器。自定义过滤器有两种实现方式:
       一种是通过Flask应用对象的 add_template_filter 方法
       通过装饰器来实现自定义过滤器
注意:自定义的过滤器名称如果和内置的过滤器重名,会覆盖内置的过滤器。

需求:添加列表反转的过滤器
方式一:通过调用应用程序实例的 add_template_filter 方法实现自定义过滤器。该方法第一个参数是函数名,第二个参数是自定义的过滤器名称。

[Python] 纯文本查看 复制代码
1
2
3
4
5
6
7
8
def do_list_reverse(my_list):
    # 通过原列表创建一个新列表
    temp_list = list(my_list)
    # 将新列表进行返转
    temp_list.reverse()
    return temp_list
 
app.add_template_filter(do_list_reverse,‘list_reverse‘)


方式二:用装饰器来实现自定义过滤器。装饰器传入的参数是自定义的过滤器名称。

[Python] 纯文本查看 复制代码
1
2
3
4
5
6
7
@app.template_filter(‘list_reverse‘)
def do_list_reverse(my_list):
    # 通过原列表创建一个新列表
    temp_list = list(my_list)
    # 将新列表进行返转
    temp_list.reverse()
    return temp_list


在 html 中使用该自定义过滤器:

[HTML] 纯文本查看 复制代码
1
2
<br/> my_list 原内容:{{ my_list }}
<br/> my_list 反转:{{ my_list| list_reverse }}


运行结果:
my_list 原内容:[3, 4, 2, 1, 7, 9] 
my_list反转:[9, 7, 1, 2, 4, 3]

更多技术资讯可关注:gzitcast

flask自定义过滤器

原文:https://www.cnblogs.com/heimaguangzhou/p/11696414.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!