web-dev-qa-db-ja.com

rails 4つのアセットパイプラインベンダーのアセットイメージはプリコンパイルされていません

私はRails 4&Ruby 1.9.3のアプリケーションとfancybox2-Rails gemに1.9.3を使用していますが、アセットパイプラインに一般的な問題があります。プリコンパイルのためにrake taskを実行すると、vendor/assets/images../gems/Ruby-1.9.3-p327/gems/fancybox2-Rails-0.2.1/vendor/assets/imagesの画像を除いてすべて問題ありません。これら2つのフォルダの画像はプリコンパイルされておらず、最終的に非リンクへのリンクに問題があります-既存の画像。

60
banesto

デフォルトでは、app/assetsフォルダーからのみ画像が含まれているようです。そのため、解決策はこの行をconfig/application.rbに追加することです

config.assets.precompile += %w(*.png *.jpg *.jpeg *.gif)
79
banesto

Sporkerはベンダー/アセット/イメージからイメージを自動ロードできないようです。

2.2アセットの構成パイプラインアセットは、アプリケーション/アセット、lib /アセット、ベンダー/アセットの3つの場所のいずれかにあるアプリケーション内に配置できます。

app/assetsは、カスタム画像、JavaScriptファイル、スタイルシートなど、アプリケーションが所有するアセット用です。

lib/assetsは、アプリケーションまたはアプリケーション間で共有されるライブラリの範囲に実際には収まらない独自のライブラリのコード用です。

vendor/assetsは、JavaScriptプラグインやCSSフレームワークのコードなど、外部エンティティが所有するアセット用です

guides.rubyonrails.org からの説明から、ベンダー/アセット/イメージを意図せず無視したとは思わない。

そこで、次の行を追加しました。

#config/application.rb
config.assets.paths << Rails.root.join("vendor", "assets", "images")

そして、問題を解決しました。これがあなたの役に立つことを願っています。

9
rocLv

Rails 4.2.xプロジェクトの場合、ベンダーイメージをvendor/assets/imagesに移動し、これをapplication.rbに追加しました。

config.assets.precompile += %w(vendor/assets/images/*)

開発および本番で正常に動作します。

6
tirdadc