首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MongoDB:在路径中找不到标识符'elem‘的数组筛选器

MongoDB:在路径中找不到标识符'elem‘的数组筛选器
EN

Stack Overflow用户
提问于 2020-06-21 01:01:06
回答 1查看 2.5K关注 0票数 0

我在Nodejs中使用mongoDB (2.2.36版)。问题是,当我尝试使用数组更新时,有一个错误“没有为路径中的标识符‘竞争对手’找到数组过滤器...",但当我在mongo shell中尝试它时,一切正常。nodejs中的代码:

代码语言:javascript
复制
db.get().collection(collectionName).update({ _id: ObjectID(id) }, {$inc: {
        "votesCount": 1,
        "rivals.$[rival].votes": 1
    },
}, { arrayFilters: [{ "rival.id": voteModel.answerId }]}, function (err, docs) {
    cb(err, docs);
});

我尝试更新版本,但2.2.36是最新版本。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-21 14:58:39

MongoDB Node.JS驱动程序版本2.2.36在update method中不支持数组筛选器。

从3.0版开始,update提供了arrayFilters选项。

您需要升级驱动程序才能使用该选项。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62488971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档