古いRails3.0プロジェクトから最新のRails3.2(Rails 4は少しエッジが効いています)にアップグレードして、宣伝どおりにアセットパイプラインを使用するのに問題があります。ファウンデーションのような宝石を使った新しいプロジェクトでアセットパイプラインをうまく使用しましたが、この古いプロジェクトでアセットパイプラインを機能させるのは難しいようで、繰り返しSprockets::FileNotFound
エラーが発生します。gemfileには、アセットグループ内のすべてのgemが正しく含まれています。
source 'http://rubygems.org'
gem "rails", "~> 3.2.13"
... database gems ...
gem 'nokogiri'
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
gem 'compass-rails'
gem 'uglifier', '>= 1.0.3'
gem 'zurb-foundation', '~> 4.0.0'
gem 'jquery-ui-rails'
end
gem 'jquery-rails'
....
Sprockets::FileNotFound: couldn't find file 'jquery'
jquery-railsを-groupの外に移動することで同様のエラーを解決したことに注意してください。ただし:assets
、少なくともファンデーションが機能するはずの方法ではありません...
私が直面している(そして関連しているかもしれない)もう1つの問題は、 gem(4.0.9)が使用されていることをコマンドがリストしているrails g foundation:install
にもかかわらず、機能しないことです。bundle install
zurb-foundation
ファウンデーションアセットで動作する新しく生成されたプロジェクトを現在のプロジェクトと比較しようとしましたが、アップグレードされたRailsプロジェクトの構成の違いを確認しているようですが、ファウンデーションは保持されていますSprockets::FileNotFound: couldn't find file 'jquery'
。
ファイルをプロジェクトのフォルダーに移動することを提案するソリューションを見てきましvendor
たが、それは私が求めているタイプのソリューションではないことに注意してください。アセットパイプラインを最大限に活用し、プロジェクトを可能な限りクリーンに保つように努めたいと思います。
助言がありますか?