マングースで代替サブドキュメント スキーマの配列を持つことは可能ですか?
たとえば、この構成されたシナリオを考えてみましょう: 人のメイン スキーマがあり、タイプ配列の vehicle というフィールドがある場合、サブ ドキュメント スキーマを定義できるようにしたいのですが、各車両タイプ (車、バイク、自転車、バスなど ) :
var car = new mongoose.Schema({
make: { type: String, required: true, default: 'Ford', trim: true },
model: { type: String, trim: true },
wheels: Number,
});
var motorbike = new mongoose.Schema({
make: { type: String, required: true, default: 'Honda', trim: true },
model: { type: String, trim: true },
seats: Number,
});
var bike = new mongoose.Schema({
make: { type: String, required: true, default: 'MuddyFox', trim: true },
model: { type: String, trim: true },
lights: Number,
});
var bus = new mongoose.Schema({
make: { type: String, required: true, default: 'MAN', trim: true },
model: { type: String, trim: true },
dents: Number,
});
/* person */
var person = new mongoose.Schema({
name: { type: String, required: true, default: 'Joe Bloggs', trim: true },
timeCreated: { type: Date, required: true, default: Date.now },
vehicles: [car, motorbike, bike, bus] /* this is what i want to do */
});
db.model('person', person);
person スキーマに注意してください。
その人はそれらの車両のいずれかを持つことができますが、各車両のデータは独自のスキーマに対して検証されます。
前もって感謝します