首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我们可以在mongo shell中使用回调吗?

我们可以在mongo shell中使用回调吗?
EN

Stack Overflow用户
提问于 2019-05-08 23:26:00
回答 1查看 220关注 0票数 1

我想在collection1中插入一个文档,在成功插入文档之后,我想在collection2中插入另一个文档。collection2中文档的一个字段是刚刚插入到collection1中的文档的_id

我正在使用回调:

db.collection1.insert(<document>,function(err,doc)){
     db.collection2.insert({collection1_id: doc[0]._id, <field>:<value>})

但是,似乎没有Node.js回调是不可用的。

有什么变通方法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-09 10:02:41

回调是Node.js异步API的一部分,在mongo外壳中不受支持(在MongoDB 4.0中)。但是,您始终可以在没有回调的情况下编写等效的代码。

mongo外壳的insertOne()方法将返回一个insertedId字段,其中包含所插入文档的_id值,因此您可以保存或引用此值。

例如:

db.collection2.insertOne({
    collection1_id: db.collection1.insertOne({}).insertedId,
    field: 'value'
})
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56044146

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档