我正在尝试查找使用doc.updateOne
插入到文档数组中的_id
子文档。如何查找新推送的_id
子文档?
这是我尝试过的,但是我担心当太多的更新发生时,我会得到一个错误的_id
await model.updateOne({
_id: docId
}, {
$push: {
arr: {a: 3, b: 4}
}
});
const freshData = await model.findById(docId);
const id = freshData.arr[freshData.arr.length - 1];
console.log(id); // _id will be printed (But what if another $push happen before findById?)
1条答案
按热度按时间clj7thdc1#
我找到答案了here
我只需要在更新文档并将
ObjectId
分配给新插入的子文档_id
之前创建ObjectId
。