Symfony2 twig在dev和prod环境中逃避策略

时间:2012-11-06 09:59:12

标签: symfony twig symfony-2.1

我有文件index.html.twig

在此文件中,我包含另一个文件:{% include 'MyBundle:Test:_test.js.twig' %}

_test.js.twig文件只有一行:{{ test_var }}

在控制器中,我传递了test_varreturn array('test_var' => '"test"');

问题在于,如果我使用不同的环境(dev和prod),sf将使用不同的转义转义策略。

在开发中我看到输出:\x22test\x22(这是一个js转义策略)

在prod:"test"(这是一个html转义策略)

为什么呢?我认为dev和prod环境应该同样有效。

1 个答案:

答案 0 :(得分:1)

我不能说为什么。我需要看看你的config.yml和config_dev.yml。

但你可以像这样写MyBundle:Test:_test.js.twig

{{ test_var|e('js') }}

或:

{% autoescape 'js' %}
    {{ test_var }}
{% endautoescape %}