nodejs mongodb jede vs toArray
Ich hatte einen kurzen Blick herum und nichts gefunden, das erfüllt mich mit einer Antwort, aber im Grunde habe ich angefangen, zu verwenden node.js mit express und mongodb zum erstellen einer webapi, statt der üblichen .Net-MVC-Web-API-route.
Eine Sache habe ich bemerkt ist jedoch, um wieder eine Sammlung von Ergebnissen, die ich bin, es zu tun in einem eher sperrigen Weg, oder so fühlt es sich zumindest.
app.get('/property', function (req, res) {
var propArray = [];
MongoClient.connect(settings.connection,
function (err, db) {
if (err) throw err;
var properties = db.collection("PROPERTIES");
var searchParams = {
Active: true,
Deleted: false
}
properties.count(searchParams, function (err, count) {
properties.find(searchParams).toArray(function (err, result) {
for (i = 0; i < count; i++)
propArray.push(new models.propertyModel(result[i]));
db.close();
return res.json(propArray);
});
});
}
);
});
Nun habe ich festgestellt, dass es eine .each
Funktion eher als .toArray
ich würde es vorziehen, zu verwenden, wie ich konnte schneiden Sie die .count
Funktion aber offensichtlich kann man nur eine Antwort zurück einst. Ich fragte mich, wenn Euch kann mich aufklären mit einigen Ihrer mongo wissen.
properties.find(searchParams).each(function (err, result) {
return res.json(result);
});
Etwas wie,, schneiden aus 6 Zeilen code und ein extra-Aufruf an die Datenbank.
result.length
statt count
?Ahhh danke, ich wusste nicht, über diesen Dank, dass ist genau die Art von Sache, die ich zu hören hoffte
Das ist perfekt gearbeitet, ich danke Ihnen sehr!
InformationsquelleAutor The Angry Saxon | 2014-07-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den count() können noch geschnitten werden, die mit toArray():
was ist, wenn 'searchParams' in den Eigenschaften.finden(searchParams) ist ein Arrary von json-Objekten? Ich meinte ich brauche, um die Suche für die passenden Sätze mit mehreren Werten?
find() nimmt ein Objekt, so können Sie nicht wirklich pass-array, um es aber in searchParams. Sie können, jedoch haben die query-Eigenschaft, kann die Suche nach passenden Sätze mit mehreren Werten. Sehen mongodb Dokument mehr info: docs.mongodb.com/manual/reference/method/db.collection.find
InformationsquelleAutor Ben