我有一个猫鼬模式。我想对与架构对应的集合中的记录进行计数。我不想计算所有记录,而是计算满足某些标准的记录。如何同步执行此计数?
在mongodb控制台中,我可以做'db.mycollections.find(criteria).count()"。如何从猫鼬代码执行此查询?
与大多数nodejs模块一样,Mongoose并非设计用于同步代码执行。这将导致应用的所有执行在数据库执行查询时停止,这可能是很长的时间。
您可以在模型上调用一个异步计数函数。
假设您从架构中创建了一个模型,如下所示:
var MyModel = mongoose.model('mySchemaCollection', mySchema);
您可以像这样获得计数:
MyModel.count(criteria, function (err, count) {
/* handle count */
});
您可以从猫鼬文档中阅读有关计数以及其他类型的查询的更多信息。