2012-03-29 65 views
1

在我的Rails我使用羅盤(0.12.alpha.4)創建精靈3.2.1應用:正確鐵路+北斗一代精靈給出錯誤圖像路徑

@import compass 

@import "../images/category-icons/type/*.png" 
@include all-type-sprites 
//+all-type-sprites 

的精靈圖像genereated,坐在app/assets/images/category-icons/type-sa69c4767de.png

但是生成的樣式表是錯誤的。它指向/assets/../images/category-icons/type-sa69c4767de.png。它僅將assets附加到路徑。它在Rails之外工作,所以我認爲它與資產管道有關。我應該配置什麼才能正常工作?

+0

你在你的指南針config.rb爲'http_generated_images_path'有哪些?我有類似的問題,並通過設置http配置路徑解決。 – maxbeatty 2012-03-30 05:08:03

+0

我根本沒有看到該配置,這與此路徑問題無關。但是,感謝讓我知道,因爲我認爲這是一件好事,所以生成的文件可以駐留在資產目錄之外(這對我來說很煩人)。 – lulalala 2012-03-30 12:48:57

+2

我同意。將生成的精靈表移動到「app/assets」之外意味着我不必嘗試從版本控制中排除這些文件。 不要忘記將新路徑添加到rails資源路徑。 'config/compass.rb'中'generated_images_dir =「tmp/sass-cache/sprites」'。 'config/application.rb'中的config.assets.paths + =「tmp/sass-cache/sprites」。 – 2012-03-30 17:19:46

回答

5

您使用的是compass-rails?它確保與資產管道的正確集成。

由於Compass v0.12,此適配器是將羅盤安裝到您的導軌應用程序的唯一方法。

請勿使用相對路徑來源圖像。圖像路徑引用已經在資產加載路徑中搜索。 Rails默認配置爲在資產加載路徑中包含app/assets/images

更改進口:

@import "category-icons/type/*.png"

+0

謝謝,相對路徑是來自設計師使用Middleman的。請記住下次轉換此部分。請注意,指南針導軌和指南針0.12.alpha.4是可以互換的。 – lulalala 2012-03-30 12:45:35