1

我正在从 ruby​​ 驱动程序调用集合更新到 mongodb 并获得返回码 117。我通常如何解释我得到的错误代码?

4

1 回答 1

1

如果您使用的是安全模式,update 方法会返回一个包含 getLastError 输出的哈希值。但是,当您不使用安全模式时,我们只返回发送到服务器的字节数。

# setup connection & get handle to collection
connection = Mongo::Connection.new
collection = connection['test']['test']

# remove existing documents
collection.remove
=> true

# insert test document
collection.insert(:_id => 1, :a => 1)
=> 1
collection.find_one
=> {"_id"=>1, "a"=>1}

# we sent a message with 64 bytes to a mongod
collection.update({_id: 1},{a: 2.0})
=> 64 # number of bytes sent to server

# with safe mode we updated one document -- output of getLastError command
collection.update({_id: 1},{a: 3.0}, :safe => true)
=> {"updatedExisting"=>true, "n"=>1, "connectionId"=>19, "err"=>nil, "ok"=>1.0}

这可以在文档中更清楚地说明。我将为下一个 ruby​​ 驱动程序版本更新它。

于 2012-06-18T16:26:25.620 回答