gpt4 book ai didi

mongodb - 助力车:插入后获取ID

转载 作者:IT老高 更新时间:2023-10-28 13:24:35 25 4
gpt4 key购买 nike

当我使用 mongo-ruby-driver 并插入新文档时,它会返回生成的“_id”:

db = MongoClient.new('127.0.0.1', '27017').db('ruby-mongo-examples')
id = db['test'].insert({name: 'example'})

# BSON::ObjectId('54f88b01ab8bae12b2000001')

我正在尝试在使用 Moped 进行插入后获取文档的“_id”:

db = Moped::Session.new(['127.0.0.1:27017'])
db.use('ruby-mongo-examples')
id = db['coll'].insert({name: 'example'})

# {"connectionId"=>15, "n"=>0, "syncMillis"=>0, "writtenTo"=>nil, "err"=>nil, "ok"=>1.0}

如何使用 Moped 获取 id?

更新:

我也尝试使用安全模式,但它不起作用:

db = Moped::Session.new(['127.0.0.1:27017'])
db.use('ruby-mongo-examples')

db.with(safe: true) do |safe|
id = safe['coll'].insert({name: 'example'})

# {"connectionId"=>5, "n"=>0, "syncMillis"=>0, "writtenTo"=>nil, "err"=>nil, "ok"=>1.0}
end

最佳答案

插入/保存后,返回的对象会有一个属性inserted_id,它是一个BSON::ObjectId:

# I'm using insert_one
result = safe['coll'].insert_one({name: 'example'})
result.methods.sort # see list of methods/properties
result.inserted_id
result.inserted_id.to_s # convert to string

关于mongodb - 助力车:插入后获取ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28883503/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com