2013-03-09 115 views
3

我是使用指南針的新手,我想在symfony2項目中使用sass。使用Symfony2指南針/ sass問題

我使用Google搜索如何設置項目: - 安裝紅寶石 - 然後安裝Compass/sass。

Assetic捆綁安裝,然後我在conf.yml補充說:

parameters: 
    assetic.filter.compass.images_dir: %kernel.root_dir%/../web/img 
    assetic.filter.compass.http_path: /img 
assetic: 
    debug:   "%kernel.debug%" 
    use_controller: false 
    bundles:  [ ] 
    filters: 
    cssrewrite: ~ 
    #sass and compass assetic conf 
    sass: 
     bin: /usr/local/bin/sass 
    compass: 
     bin: /usr/local/bin/compass 

最後我在html.twig

{% stylesheets filter="compass" output="assets/css/styles.css" "@lbTestBundle/Resources/assets/sass/*.scss" %} 
     <link rel="stylesheet" href="{{ asset_url }}" /> 
    {% endstylesheets %} 

添加當我使用命令「assetic:轉儲「的CSS文件創建,但我得到以下錯誤:

Error Output: 
/usr/bin/ruby: No such file or directory -- /usr/local/bin/compass (LoadError) 

而我的CSS是空的。

我錯過了什麼嗎?如果有人能幫助我,謝謝。

+0

確保在這些地點存在這些二進制文件。它是否可以從命令行調用這些二進制文件? – 2013-03-09 18:27:19

+0

您是否試過'/ usr/bin/compass'?據我所知,你也不需要在指南針上添加sass。 – qooplmao 2013-03-09 18:35:58

+0

我試過'/ usr/bin/compass'。相同的錯誤消息。 – Gnarok 2013-03-09 20:13:48

回答

0

要使用指南針,你需要ruby。請通過在終端中使用whereis ruby命令來檢查您安裝了ruby的位置。

然後添加路徑在assetic配置紅寶石:

assetic: 
    debug:   "%kernel.debug%" 
    use_controller: false 
    bundles:  [ YourBundleShouldBeThere ] 
    ruby: 
    bin: /path/to/ruby 
    filters: 
    cssrewrite: ~ 
    #sass and compass assetic conf 
    sass: 
     bin: /usr/local/bin/sass 
    compass: 
     bin: /usr/local/bin/compass 
+0

我做到了, ruby安裝在'usr/bin/ruby​​'上。但添加這條線給我一個錯誤:'資產預期的標量,但得到了數組'' – Gnarok 2013-03-09 20:17:02

+0

所以也許'whereis羅盤'因爲/ usr/bin/ruby​​是資產IIRC中的默認路徑。您是否使用紅寶石來安裝指南針? – l3l0 2013-03-09 20:24:25

+0

我試過了,但沒有顯示任何東西,我用ruby gem安裝它,這裏是我的寶石:'bundler(1.3.2)chunky_png(1.2.7)羅盤0.12.2)fssm(0.2.10)rake(10.0 .3)sass(3.2。7)' – Gnarok 2013-03-09 21:15:04

4

l3l0幾乎沒有。你必須指定ruby的路徑,但配置錯誤。

固定config.yml:

assetic: 
    debug:   "%kernel.debug%" 
    use_controller: false 
    bundles:  [ YourBundleShouldBeThere ] 
    # Set path to your ruby 
    ruby: /path/to/ruby 
    filters: 
    cssrewrite: ~ 
    #sass and compass assetic conf 
    sass: 
     bin: /usr/local/bin/sass 
    compass: 
     bin: /usr/local/bin/compass 

下一頁設置爲SASS和指南針的正確路徑。它們通常位於缺省gem安裝目錄的bin文件夾中。

在終端執行以下命令來查看安裝目錄

gem environment 

對於生產還需要拋售資產,僅此而已。

0

我有同樣的問題,我只是改變了青菜和指南針路徑(沒有「本地」)和它的工作對我來說:

filters: 
    sass: 
     bin: /usr/bin/sass 
    compass: 
     bin: /usr/bin/compass 
    cssrewrite: ~