Mongoose 5.x不允许传递大量运算符

Rah*_*ini 0 javascript mongoose mongodb aggregation-framework

汇总查询返回错误。

'猫鼬5.x不允许将大量操作员传递给Model.aggregate()。代替Model.aggregate({ $match }, { $skip }),做Model.aggregate([{ $match }, { $skip }])

我正在使用mongoose和MongoDb版本

“ mongoose”:“ ^ 5.5.4”,mongod版本:3.6.12

请建议我,我将非常感谢您。

Gok*_*rni 8

之前

Model.aggregate({
  $group: {
    _id: "$id",
    count: { $sum: "$like.count" }
  }
})
Run Code Online (Sandbox Code Playgroud)

Model.aggregate([{
  $group: {
    _id: "$id",
    count: { $sum: "$like.count" }
  }
}])
Run Code Online (Sandbox Code Playgroud)

说明:在以前Model.aggregate()采用不同的json对象之前,现在它们已将API更改为采用数组。

只需用JSON包装您的JSON对象即可[]