16. Введение — Пользовательские фильтры и теги

задняя часть
16. Введение — Пользовательские фильтры и теги

Введение — я описал, как использовать встроенные фильтры Django, что очень удобно, когда мы разрабатываем какие-то проекты. Однако встроенные фильтры все-таки ограничены (что делать, если встроенные не удовлетворяют наши потребности?), но правила мертвы, а люди живы. Это приводит нас к следующей теме: настраиваемые фильтры и метки.

Во-первых, два вопроса, которые нужно понять:

  • Какие бывают настраиваемые фильтры и метки — по определенным правилам определяют функции, отвечающие потребностям;
  • Где использовать пользовательские фильтры и теги — везде, где они вам нужны;

На самом деле, вы можете подумать, зачем вам использовать пользовательские функции, пользовательские модули! Это все одна правда.

1. Конфигурация пути к файлу для пользовательских фильтров и меток:

Все мы знаем, что Django требует, чтобы файлы шаблонов размещались в каталоге templates; В отличие от этого, Django также предоставляет настраиваемые фильтры и теги — их необходимо поместить в каталог templatetags!

2. Два замечания о настраиваемых фильтрах и метках:

Первый пункт:

Пользовательские фильтры и теги должны быть размещены в каталоге templatetags!

Второй пункт:

Каталог templatetags должен быть включен в зарегистрированное приложение! (Зарегистрируйте приложение в файле settings.py в каталоге проекта, как показано на рисунке ниже.)在这里插入图片描述

3. В каталоге templatetags, где находятся пользовательские фильтры и теги, есть два места:

Первый тип: специальное приложение (эксклюзивное)

  1. Создайте модуль Python с именем templatetags в каталоге приложения.

    (即包含“__init__.py”文件。也就是说,这个文件夹是个
    Python Package,而不是普通的文件夹。)
    
  2. Общедоступное — создайте новое приложение, а затем создайте папку templatetags в новом приложении (примечание: это приложение должно быть зарегистрировано!)

在这里插入图片描述

在这里插入图片描述