【发布时间】:2011-07-07 11:25:28
【问题描述】:
如何使用 Jinja2 将多维 Python 结构转换为 javascript 中的相应结构?
示例(Python/Flask):
pyStruct = [{key1:value1, key2:value2, [{subkey1:subvalue1, subkey2:subvalue2,}]},
{key1:value1, key2:value2, [{subkey1:subvalue1, subkey2:subvalue2,}]},]
render_template('jinjatemplate.html', pyStruct=pyStruct)
示例(Jinja2):
??
我想我要问的是,只能通过在 Jinja2 中创建卷积循环结构来完成,还是我在某处缺少捷径?
如果答案是肯定的,那么必须在 Jinja2 中使用卷积循环,那么直接在 python 中创建 javascript 代码并将其传递给 Jinja2 进行包含可能要容易得多。
但这似乎在某种程度上违背了使用像 Jinja2 这样的模板语言的目的......
我试过了(Jinja2):
{{ pyStruct|safe }}
...只要没有什么是 unicode,并且不会偏离 Ascii 领域(在我的情况下通常是这样),这实际上就可以工作。
哦,如果您想知道为什么要通过这种结构?我发现我经常想将相当复杂的结构传递给 javascript,以供菜单和其他复杂的选择界面使用。
【问题讨论】:
标签: javascript python flask jinja2