2012-09-20 79 views
1

我有一個庫,我正在處理一段時間,當我回去工作時,它仍然沒問題,但是當我更新gem時:mongoid從2.4.53.0.6和還更新蒙戈和bson_ext從1.6.01.7.0和運行RSpec的我時,我得到錯誤Mongoid:未初始化的常量Mongo(NameError)

Mongoid.configure do |config| 
    config.master = Mongo::Connection.new.db("db_test") 
end 

<top (required)>': uninitialized constant Mongo (NameError)我: 紅寶石1.9.3p125 的MongoDB 2.0.2-x86_64的

這個人有同樣的問題 Mongoid gives uninitialized constant Mongo 但該解決方案對我無效。

添加對礦井require "mongo"給出了不同的錯誤:

spec_helper.rb:11:in 'block in <top (required)>': undefined method 'master=' for Mongoid::Config:Module (NoMethodError)

編輯 我還是用3.X,這是現在他們是如何做到的連接

Mongoid.configure do |config| 
    config.connect_to("db_test") 
end 

回答

1

Mongoid 3。 x不再使用mongo寶石,它使用了由Mongoid團隊開發的稱爲輕便摩托車的驅動程序。

如果你想堅持的官方10gen的驅動程序,您將需要更新您的Gemfile中指定要堅持Mongoid 2.X:

gem "mongoid", "~> 2.0" 
+0

哦,真的?哈哈!愚蠢的我。感謝那。沒有注意到,我需要檢查他們的變化。所以,恩,我仍然想使用3.x - 我的問題是否轉化爲這裏http://mongoid.org/en/moped/docs/driver.html? – index

+0

對,對不起。我不確定你的鏈接點是由什麼引起的?被切斷了。 –

+0

這是一個實際的問號。哦呵。但是,我認爲http://mongoid.org/en/moped/docs/driver.html#behaviour有更好的鏈接。我還沒有嘗試過,還沒有回到我的工作站。 – index

相關問題