树枝中包含的模板将特殊字符打印为资产中的 ascii

Inluded templates in twig print special characters as ascii in assets

我对 Symfony 2.7.1 有疑问

我最近将我的项目从 2.3 升级到 2.7.1。

我检查了我所有的项目,搜索已弃用的东西来修复它,但是当我打开一个动作 twig 包含的模板又包含资产时,它们以 ASCII 格式显示在 bars 目录中。

我留下问题的例子,看看有没有人能给我一个解决方案。

在我的模板中

{% block javascripts %}
    {% include 'AdminBundle:Global:notifications.html.twig' %}    
    {% include '::genemu.js.html.twig' with {'form': form} %}
{% endblock %}

这是genemu.js.html.twig中显示错误的内容

{% javascripts output='admin/js/compiled/main_forms.js'
    'bundles/bmatznerjqueryui/js/minified/jquery-ui.min.js'
    'bundles/pinanoselect2/js/select2.full.min.js'
    'uploadify/jquery.uploadify.min.js'
    'tinymce/js/tinymce/jquery.tinymce.min.js'
    'datetimepicker/jquery.datetimepicker.js'
%}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}

是这样显示的

<script type="text/javascript" src="\x2Fapp_dev.php\x2Fadmin\x2Fjs\x2Fcompiled\x2Fmain_forms_jquery\x2Dui.min_1.js"></script>
<script type="text/javascript" src="\x2Fapp_dev.php\x2Fadmin\x2Fjs\x2Fcompiled\x2Fmain_forms_select2.full.min_2.js"></script>
<script type="text/javascript" src="\x2Fapp_dev.php\x2Fadmin\x2Fjs\x2Fcompiled\x2Fmain_forms_jquery.uploadify.min_3.js"></script>
<script type="text/javascript" src="\x2Fapp_dev.php\x2Fadmin\x2Fjs\x2Fcompiled\x2Fmain_forms_jquery.tinymce.min_4.js"></script>
<script type="text/javascript" src="\x2Fapp_dev.php\x2Fadmin\x2Fjs\x2Fcompiled\x2Fmain_forms_jquery.datetimepicker_5.js"></script>

我认为一定是 2.7.1 的问题,因为它在 2.3 中工作正常

谢谢。

这是因为较新版本的 Twig 将您的 genemu.js.html.twig 检测为 javascript(因为其中的 js),现在使用了 js 转义策略。

将文件重命名为 genemu.html.twig 因为它是 html.