Я бы сделал это так же, как Django предоставляет дополнительные теги шаблонов, то есть создает собственный пакет / приложение (django.contrib.humanize
, django.contrib.markup
, django.contrib.webdesign
)
Это всего лишь три "нормальных" пакета, в которых есть пакет templatetags
. Имя модуля внутри tempaltetags
совпадает с именем пакета / приложения (например, humanize.py
).
Затем положите его куда-нибудь, где Python сможет его найти.
Вы также можете создать некий "мета" пакет templatetags
и поместить все туда, например,
templatetags
- navigation
- __init__.py
- templatetags
- _init__.py
- navigation.py
- other
- ...
Конечно, вы должны добавить их к себе INSTALLED_APPS
(например, templatetags.navigation
) и загрузить их в свой шаблон (например, {% load navigation %}
).