发布于2020-01-20 18:44 阅读(1193) 评论(0) 点赞(13) 收藏(5)
自定义的模版过滤器必须要放在app中,并且该app必须在INSTALLED_APPS中进行安装。然后再在这个app下面创建一个python包叫做templatetags(这个名字是固定的,不能随意更改)。再在这个包下面创建一个python文件。然后在这个文件中写过滤器。
过滤器实际上就是python中的一个函数,只不过是把这个函数注册到模板库中,以后在模版中使用这个函数了。但是这个函数的参数有限制,第一个参数必须是这个过滤器需要处理的值,第二个参数可有可无,如果有,则在模版中传参。并且过滤器的函数最多只能有两个参数。在写完过滤器后,再使用django.template.library对象注册进去。实例代码如下:
过滤器文件中:
1 from django import template 2 3 register = template.Library() 4 5 def my_template(value) 6 if value != '': 7 value += '%' 8 return value 9 # 注册过滤器 10 # 第一种方式 11 register.filter("my_template",my_template)#引号里的是在模板中使用时的名字,后面的是过滤器文件中的函数名。 12 # 第二种方式 13 使用@register.filter装饰器进行装饰过滤器函数,默认过滤器函数名即为模版中使用的名字,如果修改使用名,只需将名字写在装饰器的参数中即可,如@register.filter('my'),使用时是写my,而不是my_template。
模板文件中需要加载:
1 {# 在第一行加载过滤器 #} 2 {% load '过滤器文件的名字' %}
作者:sdhjsdh
链接:https://www.pythonheidong.com/blog/article/229453/cfc3ef34e5d278e1c423/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!