Я знаю, что это старый, но, возможно, кто-то воспользуется этим ответом.
Есть также тег включения .Это похоже на тег include, только вы можете передать ему аргументы и обработать его как отдельный шаблон.
Поместите это в my_app/templatetags/my_templatetags.py
:
@register.inclusion_tag('my_snippet.html')
def my_snippet(url, title):
return {'url': url, 'title': title}
, и тогда my_snippet.html может быть:
<a href="{{ url }}">{{ title }}</a>
затем, чтобы использовать этот фрагмент в ваших шаблонах:
{% load my_templatetags %}
{% my_snippet "/homepage/" "Homepage" %}
Дополнительная информация: https://docs.djangoproject.com/en/dev/howto/custom-template-tags/#howto-custom-template-tags-inclusion-tags