未初始化的常量Mongo :: Connection

时间:2015-05-25 04:04:43

标签: ruby mongodb

我在ubuntu机器上使用rails 4.1.8以及ruby 2.1.2p95mongo-2.0.4 gem来连接从rails中的某个控制器(X)到mongo db v3.0.3。我已经尝试了许多人建议的下面给出的代码组合。但我在这两种情况下都得到了类似的错误:

 require 'mongo'
 include Mongo 

def mongocon
    @db = Mongo::Connection.new("192.168.56.102", 27017).db("convoos")
    #@db = MongoClient.new("192.168.56.102", 27017).db("convoos")
end 

错误:

 uninitialized constant Mongo::Connection

 uninitialized constant WorkdbController::MongoClient

1 个答案:

答案 0 :(得分:9)

您正在使用新的Mongo 2.0驱动程序,它打破了与1.x系列的向后兼容性。您正在尝试的代码是1.x系列。

你只需要做

require 'mongo'
db = Mongo::Client.new([ '192.168.56.102:27017' ], :database => 'convoos')

这是Ruby Mongo驱动程序的tutorial for the 2.x version