我在 NodeJs 中使用 Mongodb,我想知道在插入和更新给定文档之前是否存在检查现有字段的正确方法。
假设我有一个名为“gates”的集合,我想在其中插入新文档或更新现有文档。所以,我尝试了这个
let exist = db.collection('gates').find({_id: {$eq: somevalue}}).toArray(
(err, res) => {
if(err) throw err;
return res.length > 0;
}
);
这是我的问题,我的变量 exist 有一个未定义的值而不是 bool 值。我该如何解决?
最佳答案
您应该使用 Promise,因为查询是异步求值的。
static countGates(somevalue) {
return new Promise((resolve, reject) => {
db.collection('gates').find({_id: {$eq: somevalue}}).toArray(
(err, res) => {
if(err) {
reject(err);
}
resolve(res.length > 0);
}
);
});
}
关于javascript - Mongo - 如何在插入或更新给定文档之前检查现有字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53321756/