2011-08-31 29 views
0

我從Rails的3.0.7升級到3.0.9的Rails,現在我收到以下錯誤在我的config/application.rb中:的Rails 3.0.9:config.active_record沒有找到

/Library/Ruby/Gems/1.8/gems/railties-3.1.0/lib/rails/railtie/configuration.rb:78:in `method_missing': undefined method `active_record' for #<Rails::Application::Configuration:0x10107a830> (NoMethodError) 
from /Users/mathias/ruby/myapp/config/application.rb:47 

在application.rb中的第47行我有

config.active_record.schema_format = :sql 

似乎

config.active_record 

沒有對Rails 3.0.9這個地方在工作中發現3.0.7。這與我在config.active_record上調用哪種方法無關。當我註釋掉config.active_record的任何用法時,config.active_mailer也會發生同樣的情況。

我在application.rb中

讚賞任何幫助做require "rails/all"

+0

您嘗試使用rails'3.0.9',但使用'railties-3.1.0'?似乎是我的罪魁禍首。 –

+0

我刪除了railties 3.1.0,現在剩下的是railties 3.0.9 - 問題依然存在。 – Mathias

+0

我也創建了一個乾淨安裝的Rails 3.1.0和使用RVM的依賴關係。我遇到同樣的問題。看來Rails :: Application :: Configuration沒有用方法「active_record」和「actionmailer」以及其他方法初始化。 – Mathias

回答

0

通過步驟概述here得到此與3.1.0一起使用。使我的大部分問題消失的關鍵是要將boot.rb更改爲

require 'rubygems' 
# Set up gems listed in the Gemfile. 
ENV['BUNDLE_GEMFILE'] = File.expand_path('../../Gemfile', __FILE__) 
require 'bundler/setup' if File.exists?(ENV['BUNDLE_GEMFILE']