В моем проекте Django есть файл python, который содержит пользовательский тег шаблона и пользовательский фильтр шаблона.
Мой пользовательский тег использует template.loader.get_template()
для загрузки другого файла шаблона. Это прекрасно работало ... пока я не добавил свой собственный фильтр в загруженный шаблон.
Теперь я получаю исключение Django "Invalid Filter" TemplateSyntaxError
. Глядя на стек вызовов, Django не может загрузить мой шаблонный фильтр.
Здесь все становится странно. Я могу использовать свои собственные фильтры из другого шаблона. Я могу использовать любой другой фильтр внутри шаблона, загруженного моим собственным тегом. Но я не могу использовать свой собственный фильтр внутри своего собственного тега.
Очевидная причина этого - не загрузка файла моего пользовательского тега / фильтра в шаблон HTML, но я его правильно загружаю. (потому что, когда я не загружаю его, я получаю другую ошибку - «недопустимый тег блока»)
Я использую Django 1.2.3 на Python 2.7.
[Кстати, я наконец-то нашел ответ сам, но это заняло у меня несколько часов, и я нигде не смог найти ответ в stackoverflow или в Google, поэтому я собираюсь ответить на свой вопрос, чтобы другие не придется тратить столько времени, как я]