我使用的是Mongoose 5和Mongo 3.6。 之前我能够使用:
aggregate.exec(callback);
但现在它出现以下错误:
The 'cursor' option is required, except for aggregate with the explain argument
我不想使用游标,因为它没有提供任何方法来同时处理所有数据。 (如果我错了,请纠正我!)如何在Mongo 3.6中一次性使用批量数据聚合。
答案 0 :(得分:0)
根据mongo docs:https://docs.mongodb.com/manual/reference/command/aggregate/, 你不能这样做。
版本3.4中更改:除非命令包含explain选项,否则MongoDB 3.6将删除不带游标选项的aggregate命令的使用。除非您包含explain选项,否则必须指定游标选项。
答案 1 :(得分:-1)
Media.collection.aggregate([{$match: query}], {$cursor: {}})
.group({})
.toArray(cb)
像这样解决它