我需要一种方法来复制和动态修改我对数据库的请求。使用常规mongoose Query objects,我可以使用x = query.toConstructor()
创建查询的副本,然后使用其他参数触发多个请求,例如:
var sample = x().limit(5);
var totalCount = x().count();
然而,猫鼬Aggregate objects缺少toConstructor
功能。有没有办法用Aggregate对象实现相同的结果?
答案 0 :(得分:0)
以下解决方案对我来说效果很好,尽管效果不是很好。
const withoutId = Model.aggregate().project({ _id: false });
const totalCount = Model.aggregate(withoutId.pipeline()).count('count');
希望这至少对其他人有帮助。