Existe-t-il une méthode permettant à jinja2 de déclencher une exception lorsque nous transmettons une variable qui n'est pas présente dans le modèle? PS: Cela est différent (ou opposé) de déclencher une exception lorsqu'une variable est présente dans le modèle mais qu'elle n'est pas transmise. Pour cela, je l'utilise « = non défini StrictUndefined »déclenche une exception dans jinja si nous transmettons une variable qui n'est pas présente dans le modèle
18
A
Répondre
12
Peut-être que cela pourrait vous aider à 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'])
14
Lorsque vous chargez votre jinja2.Environment, définissez le paramètre « indéfini » à « jinja2.StrictUndefined », par exemple:
env = jinja2.Environment(loader=<someloader>, undefined=jinja2.StrictUndefined)
Vous pouvez attraper et examiner l'exception rendre à voir ce qui manque
EDIT Il serait utile si je lis votre question complète. :)