助力车:插入后获取ID

drinor

当我使用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
克列丹

从这个问题

很好,但是不幸的是,Mongo在插入时不会给我们任何东西(因为它是开枪而忘记了),并且在安全模式下,如果它在服务器上生成了ID,它仍然不会给我们ID。因此,除非它是MongoDB的核心功能,否则我们实际上没有任何可能的方法。

最好的选择是在插入文档之前生成ID:

document = { _id: Moped::BSON::ObjectId.new, name: "example" } 
id = document[:_id]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Mongoid /助力车日期类型插入失败

来自分类Dev

助力车:运行裸蒙哥指令

来自分类Dev

助力车:如何将用户添加到mongo数据库

来自分类Dev

在Spring中插入后获取ID

来自分类Dev

插入行后从游标获取生成的ID

来自分类Dev

Ruby Mongo-插入后获取ID

来自分类Dev

插入关联表后获取最后插入的ID

来自分类Dev

插入关联表后获取最后插入的ID

来自分类Dev

Spring MongoDB在保存后获取插入项目的ID

来自分类Dev

在insert_many()失败后获取插入的ID

来自分类Dev

在reactmongo中插入后如何获取文档对象ID?

来自分类Dev

插入后,重定向到编辑页面。无法获取ID

来自分类Dev

Android:插入后获取联系人ID

来自分类Dev

插入后在Entity Framework 5中获取记录ID

来自分类Dev

尝试获取插入值后获取的返回ID,但mysqli_insert_id()返回null

来自分类Dev

在prestashop上获取购物车ID

来自分类Dev

在php中使用PDO transactino插入后如何获取插入ID

来自分类Dev

使用多列主键插入MySQL表后如何获取最后插入的ID

来自分类Dev

如何在codeigniter中插入查询后获取最后的插入ID

来自分类Dev

获取插入行的ID

来自分类Dev

获取插入的ID MYSQL

来自分类Dev

获取插入行的ID

来自分类Dev

获取最后插入的ID

来自分类Dev

获取插入的ID MYSQL

来自分类Dev

将数据插入表中以获取SQLite后如何获取最后一行ID

来自分类Dev

如何在插入后不插入相关数据的情况下获取插入的行ID和相关数据

来自分类Dev

从另一个表获取ID后插入表

来自分类Dev

Slick / Oracle PLAIN SQL插入后获取自动生成的ID

来自分类Dev

如何获取URI的ID,提交后将其插入数据库?点火枪

Related 相关文章

热门标签

归档