0
StackまたはMongooseドキュメントでこれに対する回答を見つけることができないようです。ネストされたドキュメントに新しいオブジェクトを追加するにはどうすればよいですか?新しいオブジェクトをネストされたmongodbドキュメントに追加またはプッシュ
これが私の現在のスキーマです:
var SessionsSchema = mongoose.Schema({
session: {
sid: String,
dataloop: {
timeStamp: Date,
sensorValues:{
value: Number,
index: Number
}
}
}
});
クライアントから新しいデータを受信すると、私は既存のセッションドキュメントにプッシュする必要があり、私は両方$ addToSetと$プッシュを試みたが、どちらも私を与えています正しい結果。
これは$プッシュです:あなたはdataloop
配列を含めるようにスキーマを変更することを検討している場合
_id:58bb37a7e2950617355fab0d
session:Object
sid:8
dataloop:Object
timeStamp:2017-03-04 16:54:27.057
sensorValues:Object
value:134
index:18
sessionTime:0
dataloop:Object // <----------NEW OBJECT ADDED HERE
timeStamp:2017-03-04 16:54:27.059
sensorValues:Object
value:134
index:18
sessionTime:0
dataloop:Object // <----------ANOTHER NEW OBJECT
timeStamp:2017-03-04 16:54:27.059
sensorValues:Object
value:134
index:18
sessionTime:0
__v:0
これは前のオブジェクトを上書きするように見えますが、前のオブジェクトを保持して新しいオブジェクトを追加する必要があります。理にかなっている? – HjalmarCarlson
'session.dataloop'には、指定したフィールド以外のフィールドがあり、それらはそのままでなければなりませんか? –
同じスキーマを持つフィールドの新しいセット。例:session.dataloop1、session.dataloop2、session.dataloop3 – HjalmarCarlson