fosrestbundle,在json _format结果中使用twig视图进行htmlentities编码响应

时间:2016-12-01 09:16:00

标签: json twig symfony fosrestbundle

我正在使用FOSRestBundle, 对于newRessourceAction,我想生成一个json版本的表单,我可以使用它有一个模板,以便发布一个新的。

为此目的,我一直在测试几种返回json响应的方法,但在每种情况下,我的json字符串都以FOSRestBundle的jsonencoded结束。这是一个例子:

#in the controller
/**
 * @View()
 */
public function newFooAction(Request $request) {
    $_format = $request->attributes->get('_format');
    $foo = new Foo();
    $form = $this->createForm(FooType::class, $foo, ['action' => $this->generateUrl('post_foo', ['_format' => $_format]),'method' => 'POST',]);
    return ['form' => $form];
}


#in the foo.json.twig
{{ form | serialize('json') }}

输出趋于那样(注意"):

{"foo":"bar"}

1 个答案:

答案 0 :(得分:0)

我在Twig的文档中看不到serialize的任何引用。这是你做的自定义功能吗?

你能试试看看会发生什么:

{{ form|json_encode() }}

以下是它的文档:http://twig.sensiolabs.org/doc/filters/json_encode.html

试试,告诉我们结果。我还没有对此进行验证,所以我不确定它是否适合您。