资产资产收集在调试模式下连接

res*_*fer 5 symfony assetic

我试图在Symfony 2项目中使用Assetic.我在config.yml中有以下设置:

# app/config/config.yml
assetic:
    debug:          %kernel.debug%
    use_controller: true
    filters:
        cssrewrite: ~
        yui_css:
            jar: /home/testing/bin/yuicompressor-2.4.7.jar
        less:
            node: /usr/bin/node
            node_paths: [/usr/local/bin/]
            apply_to: "\.less$"
    assets:
        all_js:
            inputs:
                - @FoundationViewBundle/Resources/public/js/*
            filters: [?yui_js]
        all_css:
            inputs:
                - @FoundationViewBundle/Resources/public/css/*
            filters: [less, ?yui_css]
Run Code Online (Sandbox Code Playgroud)

(如果您想知道,这些设置未在config_dev.yml文件中被覆盖.)

这些集合由Assetic选取,并为它们创建路线.每个文件都有单独的路由,其中​​包含数字和没有文件扩展名的文件名.例如,对于"base.css"文件,下载文件的路径(应用过滤器)为"/ assetic/all_css_part_1_base_1".

然后,我将资产集合包含在我的Twig模板中,如下所示:

{% stylesheets '@all_css' %}
    <link rel="stylesheet" type="text/css" media="screen" href="{{ asset_url }}">
{% endstylesheets %}
Run Code Online (Sandbox Code Playgroud)

(同样对于"all_js"集合,但我将使用CSS方面来演示我的问题.)

当Twig呈现我的模板时,它不使用为单个文件创建的路由,而是将"all_css"集合的"asset_url"显示为"/css/9118a5a_part_1.css".

我正在使用dev前端控制器,并测试过Assetic认为它处于调试模式.(不应用仅限生产过滤器.)但是文件仍在连接,尽管文档提示不然.

由于行号不匹配,因此很难跟踪这些文件中的问题,尤其是对于JavaScript错误.为了让Twig分别显示文件,我还需要做些什么吗?

Pet*_*hof 0

您只需在模板中列出单独的资源,它将生成单独的文件,如此处所述。在生产时,它将合并为 1 个文件。