Rails Assets Precompile просто не работает

Я нажал приложение Rails на Heroku и продолжаю работать в следующей проблеме:

Я сохраню изменения в моем основном файле css.scss(в активах/таблицах стилей) или на изображениях в активах/изображениях, нажмите на git, нажмите на герою и перезагрузите страницу, чтобы узнать, что эти активы не были загружены вообще.

Это также была небольшая проблема на локальном сервере, но введите:

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/environment/production.rb:

# Disable Rails 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

Дополнительный интерес, когда я нажимаю на герою, говорит, среди прочего, следующее:

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 и не знаю, как конвейер активов отличается от того, что было в предыдущей версии, поэтому извините, если я идиот и помещаю перекрывающиеся и/или противоречивые настройки в свои файлы конфигурации.

Поблагодарили бы за любую помощь. Это была головная боль.

Ответ 1

Похоже, что вы добавляете свои локально скомпилированные активы в git и нажимаете их, и в результате Heroku не компилирует ваши активы при нажатии. Убедитесь, что вы не добавляете каталог public/assets в git.