zurb-foundation を追加しようとしている既存の Rails 3.2.14 アプリケーションがあります。zurb-foundation gem を追加し、インストール ジェネレーターを実行しました。
私の問題は、ページを読み込もうとするたびに、次のエラーが発生することです。
couldn't find file 'foundation'
スプロケットが当たったとき
//= require foundation
application.js の行
問題は、zurb-foundation gem のアセットを含むディレクトリがロード パスに追加されていないことです。対照的に、最初から zurb-foundation を含む、最近生成したアプリケーションがあり、@asset_paths.asset_environment.paths には次のものが含まれています。
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/jquery-rails-3.0.4/vendor/assets/javascripts",
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/coffee-rails-3.2.2/lib/assets/javascripts",
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/zurb-foundation-4.3.0/scss",
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/zurb-foundation-4.3.0/js"
更新中のアプリのアセット ロード パスに含まれていません。代わりに、(better_errors 診断ウィンドウで p @asset_paths.asset_environment.paths を使用して)取得しています
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/jquery-ui-rails-4.0.4/app/assets/images",
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/jquery-ui-rails-4.0.4/app/assets/javascripts",
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/jquery-ui-rails-4.0.4/app/assets/stylesheets",
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/jquery-rails-3.0.4/vendor/assets/javascripts",
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/coffee-rails-3.2.2/lib/assets/javascripts"
興味深いことに、コンソールを開発モードで実行し、Rails.application.config.assets.path を見ると、以下が含まれています。
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/jquery-ui-rails-4.0.4/app/assets/images",
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/jquery-ui-rails-4.0.4/app/assets/javascripts",
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/jquery-ui-rails-4.0.4/app/assets/stylesheets",
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/jquery-rails-3.0.4/vendor/assets/javascripts",
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/coffee-rails-3.2.2/lib/assets/javascripts",
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/zurb-foundation-4.3.1/scss",
"/usr/local/var/rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/zurb-foundation-4.3.1/js"
そして、それには zurb-foundation アセット パスが含まれます。
私は gem 'zurb-foundation' を assets グループ、development グループ、およびどのグループにも含めませんでした。新しいアプリで zurb-foundation-4.3.1 を使用しています。
私の Gemfile アセット グループは次のとおりです。
group :assets do
gem 'sass-rails'
gem 'coffee-rails'
gem 'uglifier'
gem 'compass-rails'
gem 'zurb-foundation'
end
この問題は、ZURB Foundation の Sprockets::FileNotFound に似ているようですが、Jurriaan はアセットのロード パスについて言及していません。
私が見逃している可能性のあるものはありますか?
ありがとう!