16.引言篇——自定义过滤器及标签

Posted 孤寒者

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了16.引言篇——自定义过滤器及标签相关的知识,希望对你有一定的参考价值。

引言——在前面讲述了如何使用Django内置的过滤器,这在我们进行某些项目开发时很是方便。但是,内置的过滤器毕竟有限(当内置的满足不了我们的需求该怎么办?),但是规则是死的,人是活的。这就引出了接下来要讲的内容:自定义过滤器及标签。

首先,要理解两个问题是:

  • 自定义过滤器及标签是什么——根据一定规则,自己定义出符合需求功能的;
  • 自定义过滤器及标签用在哪里——用在任何你有需求的地方;

其实,你可以想想为什么你会使用自定义函数,自定义模块!都是一个道理。

1.自定义过滤器及标签的文件路径配置:

我们都知道Django规定模板文件必须放在templates目录下;
相对的,Django也规定自定义过滤器及标签——必须放在templatetags目录下!

2.自定义过滤器及标签两大注意点:

第一点:

自定义过滤器及标签必须放在templatetags目录下!

第二点:

templatetags目录必须包含在已经被注册的app里!
(在项目目录下的settings.py文件中如下图位置进行app的注册。)

3.自定义过滤器及标签所在的templatetags目录放置的位置有两种:

第一种:某个app特用(独有)

  1. app 目录下创建名为templatetags的python模块

    (即包含“__init__.py”文件。也就是说,这个文件夹是个
    Python Package,而不是普通的文件夹。)
    
  2. 公用的——再创建一个新的app,然后在新的app中创建templatetags文件夹(需要注意的是:此app一定要注册哦!)

以上是关于16.引言篇——自定义过滤器及标签的主要内容,如果未能解决你的问题,请参考以下文章

自定义过滤器及标签

Django——模板层(template)(模板语法自定义模板过滤器及标签模板继承)

18.自定义标签及模板中的使用由浅入深

18.自定义标签及模板中的使用由浅入深

django自定义过滤器及模板标签

django自定义过滤器及标签的布置