var CarSchema = new Schema({
name: {type: String},
partIds: [{type: Schema.Types.ObjectId, ref: 'Part'}],
});
var PartSchema = new Schema({
name: {type: String},
props: [
{ colour: {type: String}, shape: {type:String} }
],
});
Zum BeispielMongoose: Bestücken verschachtelte Array Objekt mit Projektion
Car = {
name: "BMW",
partIds:[ObjectId("57baa43e152654f80aac36a6")]}
Part = {
_id: ObjectId("57baa43e152654f80aac36a6"),
name: "Piston",
props: [{colour:"red", shape: "Cubical"},{colour:"green", shape: "cylindrical"}]
Also, wenn ich mir Abfrage ein Dokument wie diese erhalten soll:
Car = {
name: "BMW",
partIds: [{
_id:ObjectId("57baa43e152654f80aac36a6"), name:"Piston", props: [{colour:"red", shape:"cubical"}]
}
Die Array Requisiten nur mit Element haben sollte Farbe rot
Ich möchte Auto mit Part Array so besetzen, dass seine Prop-Array nur das Objekt mit Colo haben Dein Rot. Gibt es sowieso, um es zu tun, oder würde ich altmodische Art und Weise durch Requisiten-Array durchlaufen müssen, die seiner Farbe mit rot entsprechen.
Haben Sie bereits die 'part' Kollektion? Oder erstellen Sie es und speichern Sie seine ID in 'Car' Collection? –
Die Teile-Sammlung ist anders und ihre IDs sind in Auto-Sammlungen 'partIds –
gespeichert, so dass Sie 'Teil'-Dokument erstellen und seine ID in' Auto'-Sammlung speichern möchten, wenn die Farbe rot ist? –