如何通過(guò)一次調(diào)用將一組對(duì)象推入mongoose中的數(shù)組?我需要使用一次調(diào)用將多個(gè)值推送到mongoose中的數(shù)組中。我嘗試使用較小的數(shù)組,但數(shù)組作為子數(shù)組插入。var kittySchema = new mongoose.Schema({
name: String,
values: [Number]});var Kitten = db.model('Kitten', kittySchema);Kitten.update({name: 'fluffy'},{$push: {values:[2,3]}},{upsert:true},function(err){
if(err){
console.log(err);
}else{
console.log("Successfully added");
}});調(diào)用上述代碼三次的結(jié)果給出了以下結(jié)果:{ "_id" : ObjectId("502b0e807809d79e84403606"), "name" : "fluffy", "values" : [ [ 2, 3 ], [ 2, 3 ], [ 2, 3 ] ] }而我想要的是這樣的:{ "_id" : ObjectId("502b0e807809d79e84403606"), "name" : "fluffy", "values" : [ 2, 3 ,2 ,3, 2, 3] }我注意到的另一件事是數(shù)組中的類型(值)被指定為Number,那么'strict'選項(xiàng)是否確保沒(méi)有插入除NUM以外的任何東西?在這種情況下,允許插入另一個(gè)數(shù)組。
3 回答

慕萊塢森
TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超4個(gè)贊
從MongoDB2.4開始,你應(yīng)該使用:
Kitten.update({name: 'fluffy'}, {$push: {values: {$each: [2,3]}}}, {upsert:true}, function(err){ if(err){ console.log(err); }else{ console.log("Successfully added"); }});
- 3 回答
- 0 關(guān)注
- 1227 瀏覽
添加回答
舉報(bào)
0/150
提交
取消