2013-02-08 200 views
1

我在嘗試遷移heroku中的postgres數據庫時出現錯誤。 首先我得到了:heroku postgressql db遷移錯誤

$ heroku run rake db:migrate --trace 
rake aborted! 
undefined method `find_by_name' for Gem::Specification:Class 
/app/lib/tasks/auto_annotate_models.rake:22:in `<top (required)>' 
/app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.11/lib/active_support/depen          dencies.rb:245:in `load' 
/app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.11/lib/active_support/depen          dencies.rb:245:in `block in load' 
/app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.11/lib/active_support/depen          dencies.rb:236:in `load_dependency' 
/app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.11/lib/active_support/depen          dencies.rb:245:in `load' 
/app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/engine.rb:425:in `b          lock in load_tasks' 
/app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/engine.rb:425:in `e          ach' 
/app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/engine.rb:425:in `l          oad_tasks' 
/app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/application.rb:145:          in `load_tasks' 
/app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.11/lib/rails/railtie/configurabl          e.rb:30:in `method_missing' 
/app/Rakefile:7:in `<top (required)>' 
/app/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/rake_module.rb:25:in `lo          ad' 
/app/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/rake_module.rb:25:in `lo          ad_rakefile' 
/app/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/application.rb:583:in `r          aw_load_rakefile' 
/app/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/application.rb:89:in `bl          ock in load_rakefile' 
/app/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/application.rb:160:in `s          tandard_exception_handling' 
/app/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/application.rb:88:in `lo          ad_rakefile' 
/app/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/application.rb:72:in `bl          ock in run' 
/app/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/application.rb:160:in `s          tandard_exception_handling' 
/app/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/lib/rake/application.rb:70:in `ru          n' 
/app/vendor/bundle/ruby/1.9.1/gems/rake-10.0.3/bin/rake:33:in `<top (required)>' 
/app/vendor/bundle/ruby/1.9.1/bin/rake:19:in `load' 
/app/vendor/bundle/ruby/1.9.1/bin/rake:19:in `<main>' 

有誰知道發生了什麼事?

+0

我認爲你應該發佈你的Gemfile。很難說出了什麼問題,我不明白這一點:「然後我在Gemfile中添加了ruby」1.9.3「,然後我得到了」 – rainkinz 2013-02-08 20:50:36

+0

神聖的文本牆蝙蝠俠! – rfusca 2013-02-08 23:50:38

+0

我不認爲'find_by_name'或任何'find_by_xxxxx'默認支持......是嗎? – courtsimas 2014-02-18 23:14:44

回答

1

您是否在做遷移之前做過heroku運行rake db:create?

+0

試過,但沒有幫助。 稍後找到該問題。這是一個來自annotate gem的腳本,不知道這是舊腳本還是其他人在我正在處理的項目中添加它。我已經刪除了腳本,現在它正在工作。謝謝。 – 2013-02-15 23:24:59