Zkontrolujte, zda to máte v config/environments/production
# Fallback to assets pipeline if a precompiled asset is missed
config.assets.compile = true
Váš problém je v podstatě v tom, že vaše aktiva nejsou automaticky kompilována.
Více informací zde:https://devcenter.heroku.com/articles/rails31_heroku_cedar
Upravit:
Od Rails 3.1 budeme používat potrubí Assets. To znamená, že musíte vložit všechna svá aktiva (obrázky, javascript, css) do app/assets . Před verzí 3.1 by je vložil do public/**/* .
Ve vývojovém režimu Rails 3.1 automaticky zkompiluje (minifikuje JS i CSS, v některých případech transformuje obrázky na base64 atd.) všechna vaše aktiva a vytvoří malý verzovaný balíček.
Pro praktický příklad spusťte bundle exec rake assets:precompile ve vašem projektu. Podívejte se na novou složku v public/ . Poté jej můžete bezpečně smazat.
V produkčním režimu to není automatické. Můžete buď povolit automatickou kompilaci aktiv, nebo ručně spustit bundle exec rake assets:precompile před nasazením.
Další informace o Assets Pipelinehttps://guides.rubyonrails.org/asset_pipeline.html
Užitečné:https://github.com/dnagir/guard-rails-assets