使用不带'光标的聚合命令'选项已弃用

时间:2017-10-07 09:39:09

标签: javascript node.js mongodb mongoose

我使用mongoose在模型上调用聚合命令。

User.aggregate({
        $match: {
            timezone: {
                $in: timezones
            }
        }
    }, {
        $group: {
            _id: '$timezone',
            "count": {
                $sum: 1
            }
        }
    })

    .exec(function (err, data) {

    if (err != null) {
            console.log("Error: " + err);
            return;
        }

        // do stuff with data
    });

但是mongo总是抱怨

  

使用不带'光标的聚合命令'选项已弃用。

1 个答案:

答案 0 :(得分:0)

我遇到过类似的问题,经过大量研究后我发现它是由于较早版本的mongoose,因为早期版本与MongoDB 3.6及更高版本中的更改不兼容。

我逐个升级了猫鼬版本,我发现它与mongoose版本4.12.2(mongoose@4.12.2)之上完全正常。

您可以通过运行以下命令升级您的mongoose版本:

npm install mongoose@4.12.2