私は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つのフォルダの画像はプリコンパイルされておらず、最終的に非リンクへのリンクに問題があります-既存の画像。
デフォルトでは、app/assetsフォルダーからのみ画像が含まれているようです。そのため、解決策はこの行をconfig/application.rbに追加することです
config.assets.precompile += %w(*.png *.jpg *.jpeg *.gif)
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")
そして、問題を解決しました。これがあなたの役に立つことを願っています。
Rails 4.2.xプロジェクトの場合、ベンダーイメージをvendor/assets/images
に移動し、これをapplication.rb
に追加しました。
config.assets.precompile += %w(vendor/assets/images/*)
開発および本番で正常に動作します。