如何分析Django中编写自定义模板标签tags和过滤器

这篇文章给大家介绍如何分析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()注册

关于如何分析Django中编写自定义模板标签tags和过滤器就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。