【Django】编写自定义模板标签tags 和 过滤器

django的模板系统自带了一系列的内建标签和过滤器,一般情况下可以满足你的要求,如果觉得需更精准的模板标签或者过滤器,你可以自己编写模板标签和过滤器,然后使用{% load %}标签使用他们。

代码布局

自定义标签和过滤器必须依赖于一个django app,也就是说,自定义标签和过滤器是绑定app的。该app应该包含一个templatetags目录,这个目录一个和model.py,views.py在同一个层级,记得在该目录下建立一个__init__.py文件一遍django知道这是一个python包。在该目录下,你可以新建一个python模块文件,文件名不要和其他app中的冲突就好。例如:

polls/ 
    models.py 
    templatetags/
         __init__.py 
        poll_extras.py 
    views.py

然后在你的模板文件中你可以这样使用你的自定义标签和过滤器:

{% load poll_extras %}

注意事项:

  • 包含templatetags目录的app一定要在INSTALLED_APPS列表里面
  • {% load %}load的是模块名,而不是app名
  • 记得使用 from django import template ,register=template.Library()注册

参考文章:https://my.oschina.net/u/993130/blog/210459

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29096438/viewspace-2146250/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29096438/viewspace-2146250/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值