我有两个来自我的控制器的数组,我传递给我的twig模板。这个树枝模板然后将这些值传递到我的javascript文件,但它们如何结束是不正确的。
//Controller
return $app['twig']->render({template_name}, array(
'cities' => $this->cities,
));
在我的twig模板中,我有以下代码片段:
var cities = "{{ cities|json_encode(constant('JSON_PRETTY_PRINT')) }}";
我遵循了Sensio的实验室文档提出的建议,这对我来说似乎不起作用。
我最终得到一个json字符串,如下所示:
{"B01":["Gaborone"]...}
据说还没有定义JSON_PRETTY_PRINT。如果我删除此常量,则错误消失。对我来说最重要的是拥有正确的json格式,我已经尝试了我在网上提出的所有建议。
关于如何正确输出我的json的任何建议?
答案 0 :(得分:1)
我认为您应该使用原始过滤器,例如:
var cities = "{{ cities|json_encode(constant('JSON_PRETTY_PRINT'))|raw }}";