0

Compass は、Rails 3.1 以降のアセット パイプライン環境で画像ファイルからスプライトを生成できるという印象を受けました。しかし、私はそれを機能させることができません。

私の application.scss ファイルには、次のコードがあります。

@import "foo/*.png";
@include all-foo-sprites;

fooディレクトリがあるapp/assets/images場合、これは問題なく機能しますが、ディレクトリがある場合、lib/assets/imagesまたはvender/assets/imagesまったく機能しません。

エラーが発生し続けます:

No files were found in the load path matching "foo/*.png". Your current load paths are: /Users/xxxxxx/app/assets/images

しかし、問題なく動作するため、それがロードパスにあることvender/assets/images/foo image-url('foo/bar.png')わかっています。

私が本当に望んでいるのは、画像をGemに入れることです(画像は多くのアプリで共有されているため)が、それも機能しません。

これが可能かどうか誰にもわかりますか?Compass-Rails がアセット パイプラインをサポートしていることは知っていますが、この特定の機能のサポートについて言及している場所が見つかりません。

4

1 に答える 1

2

デフォルトでは、compass-rails は通常のアセット パイプライン ディレクトリでスプライトを検索しないように見えますが、これは私が期待したものではありませんが、必要に応じて簡単に追加できます。

コンパス初期化子に次のコードを追加しました。これは、基本的にすべてのアセット パイプライン ロード パスを Compass の sprite_load_path に追加します。

Compass.add_configuration({:sprite_load_path => Compass.configuration.sprite_load_path + Rails.application.config.assets.paths}, 'sprites')
于 2012-10-03T00:28:59.157 に答える