私たちはMongooseを使用するアプリケーションを急速に開発しており、スキーマは頻繁に変更されています。既存のドキュメントのスキーマを更新する適切な方法を理解するには、ドキュメントを吹き飛ばして最初から完全に再作成する必要があります。
http://mongoosejs.com/docs/api.html#schema_Schema-addに出くわしましたが、これは正しいようです。これを実際に実装する方法についてのドキュメントはほとんどまたはまったくないため、MongoDBを初めて使用する人にとっては非常に困難です。
enabledという新しいフィールドを追加したいだけです。私のスキーマ定義は次のとおりです。
var sweepstakesSchema = new Schema({
client_id: {
type: Schema.Types.ObjectId,
ref: 'Client',
index: true
},
name: {
type: String,
default: 'Sweepstakes',
},
design: {
images: {
type: [],
default: []
},
elements: {
type: [],
default: []
}
},
enabled: {
type: Boolean,
default: false
},
schedule: {
start: {
type: Date,
default: Date.now
},
end: {
type: Date,
default: Date.now
}
},
submissions: {
type: Number,
default: 0
}
});