埋め込みオブジェクトのスキーマはプレーンオブジェクトを使用して定義する必要があるため、定義を分離したい場合は、次のように行うことができます。
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
});