使用assetic发布特定文件夹

时间:2014-07-05 11:45:36

标签: symfony assetic

我有一个看起来像这样的目录结构,使用bower作为前端的东西:

app/Resources/public
    bower_components
         jquery
         lightbox
         ...
    css
         base.css

app/Resources/views
    layouts
         admin
              base.html.twig
         site
              base.html.twig

后来我使用苦行僧来发布所有文件,但是GETS发布的文件只是文件中引用的文件,例如:

...

{% stylesheets
'../app/Resources/public/bower_components/normalize-css/normalize.css'
'../app/Resources/public/css/base.css'
'../app/Resources/public/bower_components/bootstrap/dist/css/bootstrap.min.css'
'../app/Resources/public/bower_components/lightbox/css/lightbox.css' filter='cssrewrite,?uglifycss' %}
<link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}

...

所有文件都没有问题,只是lightbox.css尝试访问位于app/Resources/public/bower_components/lightbox/img内的图片,后来被归结为http://something.com/app/Resources/public/bower_components/lightbox/img/close.png,这是无法访问的,应该引用网络目录,我知道这可以通过在捆绑中包含bower组件,或者将shit移动到一个或另一个地方来解决,我只是问是否有适当的Symfony2 /资产方式来解决这个问题,比如发布特定的img文件夹和以这种方式引用它?

1 个答案:

答案 0 :(得分:0)

您需要添加cssrewrite过滤器来重写css并修复图片问题,请检查: http://symfony.com/doc/current/cookbook/assetic/asset_management.html#cookbook-assetic-cssrewrite