Я использую Flask с Jinja2 в качестве языка шаблонов.
Как преобразовать многомерную структуру Python в соответствующую структура в javascript с использованием Jinja2?
Пример (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, тогда, вероятно, намного проще просто создать код javascript непосредственно в python и передать его Jinja2 для включения.
Но это, похоже, несколько противоречит цели использования языка шаблонов, такого как Jinja2 ...
Я попробовал (Jinja2):
{{ pyStruct|safe }}
... и это действительно работает, пока ничто не является Unicode, а не заблудиться из страны Ascii (что обычно происходит в моем случае).
О, а если вы задаетесь вопросом, зачем проходить такую структуру? Я обнаружил, что часто хочу передать довольно сложные структуры в javascript для использования в меню и других сложных интерфейсах выбора.