你如何使用mongoose 5.x.x的arrayFilters? [重复]

问题描述 投票:0回答:1

这个问题在这里已有答案:

我几天前问过question有关更新嵌套对象数组中的数组的问题。现在,MongoDB 3.6通过arrayFilters功能正式支持它。

它是在Mongoose 5.x.x中实现的吗?语法是什么?我应该使用哪种方法?

node.js mongodb mongoose mongodb-query
1个回答
0
投票

实际上这里是findOneAndUpdate命令的一个例子:

Company.findOneAndUpdate(
  {'companyId': parseInt(req.params.companyId)},
  {$pull: {'companyDivisions.$[element].divisionDepartments': {'departmentId': parseInt(req.params.departmentId)}}},
  {arrayFilters: [{'element.divisionId': parseInt(req.params.divisionId)}]},
  (err) => {
    if (err) res.status(400).json(err)
    res.status(200).json({success: true, message: 'this worked without errors!'})
  }
)

我有两个问题:

1)我试图添加一个未在我的架构中表示的test字段。

2)我完全忘记了parseInt我的参数中的地狱,因为在我的模式中这些是数字。

谢谢大家。 :d

© www.soinside.com 2019 - 2024. All rights reserved.