Ich habe eine Reihe von _ids und möchte alle Dokumente entsprechend abrufen. Wie geht das am besten?
Etwas wie ...
// doesn't work ... of course ...
model.find({
'_id' : [
'4ed3ede8844f0f351100000c',
'4ed3f117a844e0471100000d',
'4ed3f18132f50c491100000e'
]
}, function(err, docs){
console.log(docs);
});
Das Array kann Hunderte von _ids enthalten.
{ _id : 5 }
ist das gleiche wie{ '_id' : 5 }
.IDs ist das Array von Objekt-IDs:
Verwenden von Mongoose mit Rückruf:
Verwenden von Mongoose mit asynchroner Funktion:
Vergessen Sie nicht, das Modell mit Ihrem tatsächlichen Modell zu ändern.
quelle
ObjectId
wie die oben genannten habe (z. B. habe ich Projekte und habe eine Reihe von zugewiesen Projekte an bestimmte Benutzer mit der Projekt-ID, auf die im Benutzermodell verwiesen wird) Wenn ich ein Projekt lösche, wie stelle ich sicher, dass dasid
aus dem Array gelöscht wird, auf das im Benutzermodell verwiesen wird? Danke mat.Verwenden Sie dieses Abfrageformat
quelle
Sowohl node.js als auch MongoChef zwingen mich, in ObjectId zu konvertieren. Dies ist, was ich benutze, um eine Liste von Benutzern aus der Datenbank zu holen und einige Eigenschaften abzurufen. Beachten Sie die Typkonvertierung in Zeile 8.
quelle