Trova e Conta elementi di raccolta con Mongoose

In Mongoose, ho bisogno di trovare elementi in una collezione e contarli, e ottenere entrambi i risultati della ricerca e contare. Ho provato

Model.find().count(function (err, count) { // Get count, but cannot get results of find }); 

C’è un modo per ottenere find () e count () senza chiamarli due volte?

È ansible utilizzare la lunghezza dell’array restituito:

 Model.find().exec(function (err, results) { var count = results.length }); 

Devi fare 2 domande separate, sfortunatamente. La risposta di Festo funziona solo se nel database ci sono meno elementi del limite.

 var countQuery = Model.count(); var findQuery = Model.find().limit(2); countQuery.exec(function (e, count) { console.log('count', count); // can be more than 2, this is not calculated, mongo stores this value internally }) findQuery.exec(function(e, data) { console.log('found items', data); // will be 2 or less elements });