Вызывать исключение в jinja, если мы передали переменную, которой нет в шаблоне
Есть ли метод jinja2 для создания исключения, когда мы передаем переменную, которая отсутствует в шаблоне?
PS: Это отличается (или наоборот) от создания исключения, когда переменная присутствует в шаблоне, но не передается. Для этого я использую "undefined= StrictUndefined"
Ответы
Ответ 1
Когда вы загружаете jinja2.Environment, установите параметр "undefined" в "jinja2.StrictUndefined", например:
env = jinja2.Environment(loader=<someloader>, undefined=jinja2.StrictUndefined)
Вы можете поймать и изучить исключение визуализации, чтобы увидеть, что не хватает
EDIT Это поможет, если я прочитаю ваш полный вопрос.:)
Ответ 2
Возможно, это может помочь вам
http://jinja.pocoo.org/docs/api/#the-meta-api
>>> from jinja2 import Environment, meta
>>> env = Environment()
>>> ast = env.parse('{% set foo = 42 %}{{ bar + foo }}')
>>> meta.find_undeclared_variables(ast)
set(['bar'])