2

Rails アプリケーションに Heroku Cedar スタックを使用しています。git でプリコンパイルされたものに煩わされたくないため、スラッグ コンパイル中にアセットをプリコンパイルしたいと考えています。

スラッグのコンパイル中にログに次のように表示されるようになりました。

Preparing app for Rails asset pipeline
       Running: rake assets:precompile
       /usr/local/bin/ruby /tmp/build_8bg62ph22vwj/vendor/bundle/ruby/1.9.1/bin/rake assets:precompile:nondigest RAILS_ENV=production RAILS_GROUPS=assets

しかし、サイトにアクセスしようとすると、次のheroku logsようになります。

2011-11-30T08:23:52+00:00 app[web.1]: ActionView::Template::Error (blueprint/screen.css isn't precompiled):
2011-11-30T08:23:52+00:00 app[web.1]:     22:   <%= javascript_include_tag 'http://html5shiv.googlecode.com/svn/trunk/html5.js' %>
2011-11-30T08:23:52+00:00 app[web.1]:     23:   <![endif]-->
2011-11-30T08:23:52+00:00 app[web.1]:     24:   <%= javascript_include_tag  'application' %>
2011-11-30T08:23:52+00:00 app[web.1]:     25:   <%= stylesheet_link_tag     'blueprint/screen', :media => 'screen' %>
…

どこに問題があるのか​​ わかりますか?

4

2 に答える 2

4

アプリをローカルに展開しようとしましたか? その場合、同じ結果が得られます。

アセット パイプラインを使用する場合、デフォルトですべての CSS が application.css を介して提供されます。

スタイルシート タグを次のように変更できますか。

<%= stylesheet_link_tag 'application' %>

開発中に正しく表示されれば、本番環境でも機能するはずです。

または、そのファイルを直接インクルードする必要がある場合は、次のように変更config/environments/production.rbして追加する必要があります。

config.assets.precompile += %w( blueprint/screen.css )
于 2011-11-30T14:17:26.023 に答える
0

Dominic Townsendは、絶対に正しい問題の原因を示しました。ここでの解決策は、スタックオーバーフローに関する他の質問に対する回答の非常に優れたオプションです。

于 2011-11-30T18:48:45.240 に答える