我有一个猫鼬模式。我想计算与模式对应的集合中的记录。我不想计算所有记录,但记录满足一些标准。如何同步执行此计数?
在mongodb控制台中我可以做`db.mycollections.find(criteria).count()“。如何 从mongoose代码执行此查询?
答案 0 :(得分:1)
与大多数nodejs模块一样,Mongoose不能用于同步代码执行。这会导致应用程序的所有执行在数据库执行查询时停止运行,这可能需要很长时间。
您可以在模型上调用异步计数功能。
假设您从模式中创建了一个模型,如下所示:
var MyModel = mongoose.model('mySchemaCollection', mySchema);
您可以这样计算:
MyModel.count(criteria, function (err, count) {
/* handle count */
});
您可以从Mongoose Documentation了解有关计数以及其他类型查询的更多信息。