繁体   English   中英

如何在nodejs中重用已经执行的查询mongodb mongoose

[英]How to reuse already exec query mongodb mongoose in nodejs

是否可以在 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()

我知道这个代码不起作用..

你可以使用这种方法:

 User.findOne({ _id: req.userData._id }).exec((err, result) => {
            if(result)
            {
             result.invited =  recipient.value;
             result.save((err) => {
              if (err) // do something
             });
            }
           

        })
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM