Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在mongoDB中,如何使用async/await获取使用insertOne()创建的对象的id?_Javascript_Mongodb_Async Await - Fatal编程技术网

Javascript 在mongoDB中,如何使用async/await获取使用insertOne()创建的对象的id?

Javascript 在mongoDB中,如何使用async/await获取使用insertOne()创建的对象的id?,javascript,mongodb,async-await,Javascript,Mongodb,Async Await,因此,我创建了一个用户对象,并使用async/await将其插入到我的mongo数据库中 像这样: await db.collection('users').insertOne({ name: 'testName', age: 20 }); console.log('new user created'); 我想从我刚刚添加的对象中获取Id。我目前正在这样做: const newUser = await db.collection('use

因此,我创建了一个用户对象,并使用async/await将其插入到我的mongo数据库中

像这样:

    await db.collection('users').insertOne({
      name: 'testName',
      age: 20
    });
    console.log('new user created');
我想从我刚刚添加的对象中获取Id。我目前正在这样做:

    const newUser = await db.collection('users').insertOne({
      name: 'testName',
      age: 20
    });
    console.log('new user created');
    console.log(newUser.ops[0]._id);
这是我想要的,但这似乎不是最干净的方法。是否有更好的方法使用async/await获取新创建对象的id?

以下是您的答案:

insertOne返回:包含以下内容的文档: 如果操作以写关注点运行,则布尔值确认为true;如果写关注点被禁用,则布尔值确认为false。 字段insertedId与插入文档的_id值相同

例如:

{
   "acknowledged" : true,
   "insertedId" : ObjectId("56fc40f9d735c28df206d078")
}

是什么让你觉得这不是“干净”?这与
async
/
wait
有什么关系?归根结底,这些都是承诺的左轮手枪。真的不清楚你在问什么?