【问题标题】:mongoose.update({$in}猫鼬.update({$in}
【发布时间】:2012-08-08 09:28:14
【问题描述】:

最近我在使用 mongoose.someModel.find({$in}) 时要求 $in https://stackoverflow.com/questions/11839765/whats-wrong-with-in-in-mongoose"

重新启动节点几次后,它可以正常工作。但现在我找到了下一个

dbQueries.update({_id: {$in: req.body.data}, authorId: req.user._id}, {deleted: true}, function onUpdate(err){
            if(err) {
                console.log(err);
                res.json({epicFail: 'ERR_RestrictedAccess'});
                return; 
            }
            res.json({});
        });

我发现它只更新第一个找到的文件!怎么了?我使用最后一个节点版本和最后一个 mongoose 2。此外,它与 mongo-native 一起正常工作!!!

【问题讨论】:

    标签: node.js mongoose


    【解决方案1】:

    我认为,您需要在查询中添加'multi' option

    dbQueries.update({_id: {$in: req.body.data}, authorId: req.user._id}, {deleted: true}, { multi: true }, function onUpdate(err){
        if(err) {
            console.log(err);
            res.json({epicFail: 'ERR_RestrictedAccess'});
            return; 
        }
        res.json({});
    });
    

    【讨论】:

    • 谢谢!哦,我等v.3 api 文档已经很久了。
    猜你喜欢
    • 2015-10-26
    • 1970-01-01
    • 2012-08-04
    • 2014-04-12
    • 2019-09-16
    • 2016-10-02
    • 2017-10-08
    • 2020-04-24
    相关资源
    最近更新 更多