2013-03-28 45 views
9

我剛更新我的應用程序到Rails 4.0.0.beta1和Ruby 2.0.0。這是一個相當簡單的應用程序,更新進展順利,但當我部署到Heroku時,我得到了預編譯資產的路由錯誤。Rails 4更新後Heroku資產路由錯誤

ActionController::RoutingError (No route matches [GET] "/assets/application-ec10cb548646d3f1c9963e6071fd834f.css"): 

ActionController::RoutingError (No route matches [GET] "/assets/application-f6ecf7845034937996ac1e966af347b9.js"): 

任何人都可以點我在正確的方向?

+0

你是如何預編譯的?您是否使用資產同步寶石或預編譯本地第一或.... – drhenner

+0

我已經有一段時間Heroku這個應用程序現在,它總是做一個資產:預編譯爲'git push heroku主'部署過程。 ctshryock答案爲我解決了它。 – SteveO7

回答

16

如果按照這個指南(Getting Started with Rails 4.x on Heroku昨天下午(2013年3月27日),那麼你很可能需要您的Gemfile從改變:

group :heroku do 
    gem 'rails_log_stdout',   github: 'heroku/rails_log_stdout' 
    gem 'rails3_serve_static_assets', github: 'heroku/rails3_serve_static_assets' 
end 

簡單:

gem 'rails_log_stdout',   github: 'heroku/rails_log_stdout' 
gem 'rails3_serve_static_assets', github: 'heroku/rails3_serve_static_assets' 

可選地,開關:heroku:production

+0

解決了它,謝謝! – SteveO7

+2

沒有幫助我。仍然有相同的問題。不好玩。 – courtsimas

14

我相信這個解決方案已經更新,Heroku已經用和rails3_serve_static_assets替換爲rails_12factor。見here。現在

,你應該把這個在您的Gemfile:

gem 'rails_12factor', group: :production 

然後運行bundle installgit push heroku

+2

不只是一種信念,這是解決方案! – Attilio