如果我有这样的结构:
parameters = {'key1': {'nested_key2': 'value'}}
我知道如何访问 Jinja2 模板中的“值”:
template data
{{ key1.nested_key2 }}
more template data
我可以在 Jinja2 模板中访问以下结构中定义的“值”吗?
parameters = {'some.key1': {'another.nested_key2': 'value'}}
这种方式会导致有关“某些”未定义的错误...
template data
{{ some.key1.another.nested_key2 }}
more template data
那么我如何从 Jinja2 模板访问最后一个案例中的“值”?
最佳答案
您仍然可以在 jinja2 中使用字典符号访问它,因此您可以将它用作 parameters['some.key1'].another.nested_key2
在您的情况下,没有定义任何称为 some
的东西,因为在 some
和 key1
之间有一个 .
> 它无法将其解析为任何变量。
另一件事是,我强烈建议您使用 _
而不是 .
来避免这个问题,如果 some.key1
否则不会造成不便。
关于python - 如何在 Jinja2 中访问包含 "."(点)的键的字典参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26766705/