Mungo-Abfrage: suchen Sie eine Objekt-id in ein array
Wie könnte ich ein Bild von id in dieses Schema. Ich habe die id des Benutzers und der id des Bildes, ich bin auf der Suche nach. Was wäre der beste Weg, dies zu tun und nicht alle Bilder in diesem Fall haben unterschiedliche ids oder könnten Sie dieselbe id haben, denn Sie gehören nicht dem gleichen Benutzer?
Mein Schema sieht wie folgt aus:
var userSchema = new Schema({
local: {
email: String,
password: String
},
facebook: {
id: String,
token: String,
email: String,
name: String
},
name: String,
about: String,
images: [{
id: Schema.ObjectId,
link: String,
main: Boolean
}]
});
- Sie interessieren sich für das vollständige Objekt oder nur das Bild mit der angegebenen id?
- Ich würde prefere eine vollständige Objekt mit nur einem Bild mit der übergebenen id.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie daran interessiert sind, das volle Objekt-es ist eine einfache
find
:Ich glaube nicht, dass es eine Möglichkeit zur Verringerung der Bild-array in das Ergebnis.
Aktualisieren eines einzelnen Elements in der Bild-array-können Sie dieses verwenden:
da Bilder innerhalb des Dokuments können Sie haben die gleichen ID ' s jedoch jedes mal, wenn Sie die Abfrage, die Sie sollten im Hinterkopf behalten, dass Sie senden einige andere Parameter wie facebook.id oder facebook.E-Mail zusammen mit der Bild-id ' s, um Sie abzuholen. Sonst bekommen am Ende alle, der möglicherweise irrelevant ist, nur weil Sie sich entscheiden, zu halten, die gleiche ID ' s für Bilder.