可以重用nodejs中已经exec
的mongodb / mongoose查询吗?
例如,我创建这样的查询来检查用户是否存在:
const inviter = await User.findOne({ _id: req.userData._id }).exec()
// there's bunch of code bellow here before update the user data
基本上,如果我想更新数据,则必须再次编写相同的代码并添加如下更新功能:
User.findOneAndUpdate({ _id: req.userData._id }, { $push: { invited: recipient.value } }, { useFindAndModify: false })
是否有可能继续第一个查询并添加简短查询以根据第一个查询的结果进行更新,例如:
inviter.update({ $push: { invited: recipient.value }).exec()
我知道此代码不起作用。
答案 0 :(得分:0)
您可以使用这种方法:
User.findOne({ _id: req.userData._id }).exec((err, result) => {
if(result)
{
result.invited = recipient.value;
result.save((err) => {
if (err) // do something
});
}
})
}