2012-09-20 64 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

相关问题