MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Sous-schémas sur Mongoose sans tableaux

Le schéma des objets intégrés doit être défini à l'aide d'objets simples, donc si vous voulez garder les définitions séparées, vous pouvez le faire comme :

var SomeOther = {
    a              : { type:String, default:'test' },
    b              : { type:Boolean, default:false }
    ...
};
var SomeOtherSchema = new Schema(SomeOther); // Optional, if needed elsewhere

var GroupSettings = {
    x              : { type:Number, default:20 },
    y              : { type:Boolean, default:false },
    ...
    else           : SomeOther
};
var GroupSettingSchema = new Schema(GroupSettings); // Optional, if needed elsewhere

var GroupSchema = new Schema({
    name                : { type:String , required:true, unique:true},
    description         : { type:String, required:true },
    ...
    settings            : GroupSettings
});