Rails アプリを Heroku にプッシュしましたが、引き続き次の問題が発生します。
メインの css.scss ファイル (assets/stylesheets 内) または assets/images 内の画像に変更を保存し、git にプッシュし、それを heroku にプッシュして、ページをリロードしますが、これらのアセットが変更されていないことがわかります。まったく読み込まれました。
これはローカル サーバーでもわずかな問題でしたが、次のように入力します。
rake assets:precompile
ローカルサーバーのリロードは通常機能しましたが、
heroku run rake assets:precompile
その後、再プッシュしても何も起こりません。私は情報を求めて釣りをしましたが、特に役立つものは見つかりませんでした。
注目すべきは、私のconfig/application.rb (これらのいくつかは釣りの結果です):
# Enable the asset pipeline
config.assets.enabled = true
if defined?(Bundler)
# If you precompile assets before deploying to production, use this line
Bundler.require(*Rails.groups(:assets => %w(development test)))
# If you want your assets lazily compiled in production, use this line
# Bundler.require(:default, :assets, Rails.env)
end
config/environments/production.rbで:
# Disable Rails's static asset server (Apache or nginx will already do this)
config.serve_static_assets = false
# Compress JavaScripts and CSS
config.assets.compress = true
# Fallback to assets pipeline if a precompiled asset is missed
config.assets.compile = true
# Generate digests for assets URLs
config.assets.digest = true
さらに興味深いことに、herokuにプッシュすると、とりわけ次のように表示されます。
Preparing app for Rails asset pipeline
Detected manifest.yml, assuming assets were compiled locally
-----> Rails plugin injection
Injecting rails_log_stdout
Injecting rails3_serve_static_assets
と
Installing dependencies using Bundler version 1.3.0.pre.5
Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment
私は Rails 3 で学びましたが、アセット パイプラインが以前のバージョンで利用可能だったものとどのように異なるのかよくわかりません。構成ファイルに重複した設定や矛盾した設定を入れていて、ばかげていたら申し訳ありません。
助けていただければ幸いです。これは頭の痛い問題です。