Django - Как использовать мои пользовательские фильтры внутри любого включенного шаблона?

Я не могу использовать свои фильтры в моем включенном дочернем представлении, фильтр работает, когда он написан напрямую, но мне нужно дочернее представление как включение...

Вот фильтр:

from django import template
from django.template.defaultfilters import stringfilter

register = template.Library()

@register.filter
def lower(value):
    return value.lower()

Вот как я называю свой шаблон:

{% load app_filters %}
{% include 'view.template.html' %}

view.template.html

<h1>{{ 'HELLO WORLD!' | lower }}</h1>

Но дело в том, что он не работает, если мне не пришлось добавлять {% load app_filters %} внутрь view.template. html, но мне нужен этот шаблон и для моего углового приложения, поэтому я не могу написать эту строку в шаблоне. Это общий шаблон для моего приложения angular и отдельное представление для шаблона без углов в Django.

Как я могу внедрить свои пользовательские фильтры во включенное представление, не изменяя представление? Можно пройти как {% include 'view.template.html' with app_filters=app_filters %}? Это только идея.


person Emisael Carrera    schedule 30.12.2016    source источник


Ответы (1)


Я решаю в данный момент с:

<div ng-hide="true">
    {% load app_filters %}
</div>

В view.template.html, поэтому это не повлияет на шаблон в angular и позволит загрузить фильтры django, как и ожидалось.

person Emisael Carrera    schedule 30.12.2016