2014-02-26 68 views
0

我正在嘗試使用Assetic來包含我的基礎CSS和js資產,這些資產並未捆綁在一起。他們位於MySymfonyApp/app/Resources/public/css/MySymfonyApp/app/Resources/public/js/包括不在捆綁中的symfony基礎資產

我在base.html.twig模板下面,但我發現404

{% stylesheets '%kernel.root_dir%/Resources/public/css/*' %} 
    <link href="{{ asset_url }}" type="text/css" rel="stylesheet" /> 
{% endstylesheets %} 

    {% javascripts 
     '%kernel.root_dir%/Resources/public/js/jQuery.js' 
     '%kernel.root_dir%/Resources/public/js/*' %} 
     <script src="{{ asset_url }}"></script> 
    {% endjavascripts %} 

我也試着用同樣的結果如下。

{% stylesheets '../app/Resources/public/css/*' %} 
    <link href="{{ asset_url }}" type="text/css" rel="stylesheet" /> 
{% endstylesheets %} 

我如何引用未綁定的資產?

回答

1

解決方案:

資產app/Resources/public/*是一種特殊情況。他們可以輕鬆管理。

這些將所有被複制(或符號鏈接),以web/public/*如果你調用控制檯命令:

app/console assets:install web 

......或者......

app/console assets:install web --symlink 

現在的資產可以是直接包含在web文件夾中。

<script src="{{ asset('js/jquery.js') }}"></script> 

提示:

如果您需要從相對於內核ROOTDIR其他目錄獲取資產。

你可以做這樣的事情:

# app/config/config.yml 
assetic: 
    assets: 
     css_boostrap: 
      inputs: 
       - %kernel.root_dir%/../vendor/twbs/bootstrap/dist/css/bootstrap.min.css 
       - %kernel.root_dir%/../vendor/myself/bootstrap-theme/*.css 
     js_jquery: 
      inputs: 
       - %kernel.root_dir%/Resources/public/js/jquery.min.js 

現在執行控制檯命令

app/console assetic:dump 

...並把它們包含在你的模板之一:

{% stylesheets '@css_boostrap' %} 
    <link href="{{ asset_url }}" type="text/css" rel="stylesheet" /> 
{% endstylesheets %}