Python Jinja:作为数组的上下文
Jinja2上下文只能是一本字典吗?在许多情况下,我没有Python Jinja:作为数组的上下文,python,templates,jinja2,Python,Templates,Jinja2,Jinja2上下文只能是一本字典吗?在许多情况下,我没有{'something':[1,2,3]},而只是[1,2,3] 为了循环浏览,我是否被迫将列表包装到字典中 EDIT:如果有人认为它有用,我最终会将上下文中的所有内容传递给下面的函数,这样它就不会更改字典,而是将列表包装在{'this':[MY_ARRAY]}结构中 def checked_context(ctx): return ctx if isinstance(ctx, dict) else {'this': ctx} 基
{'something':[1,2,3]}
,而只是[1,2,3]
为了循环浏览,我是否被迫将列表包装到字典中
EDIT:如果有人认为它有用,我最终会将上下文中的所有内容传递给下面的函数,这样它就不会更改字典,而是将列表包装在{'this':[MY_ARRAY]}
结构中
def checked_context(ctx):
return ctx if isinstance(ctx, dict) else {'this': ctx}
基本上,您可以继续正常使用字典,并可以使用this
访问列表,就像下面的示例中处理简单列表,例如[1,2,3]
:
{% for number in this %}
{{ number }}
{% endfor %}
Jinja上下文是一个名称空间;因此,是的,您必须使用字典,否则这些值不会绑定到名称,以便您在模板中引用