Mongoid:未初始化的常量Mongo(NameError)

时间:2012-09-20 11:30:12

标签: mongodb mongoid

我有一个我正在工作的图书馆已经离开了一段时间,当我回去工作时,它仍然很好,但当我更新gems:mongoid从2.4.53.0.6和还将mongo和bson_ext从1.6.0更新为1.7.0,当运行我的rspec时出现错误

来自

<top (required)>': uninitialized constant Mongo (NameError)

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

我有: 红宝石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 个答案:

答案 0 :(得分:1)

Mongoid 3.x不再使用mongo gem了,它使用了由Mongoid团队开发的名为moped的驱动程序。

如果你想坚持官方的10gen驱动程序,你需要更新你的Gemfile以指定你想坚持使用Mongoid 2.x:

gem "mongoid", "~> 2.0"