1 回の呼び出しを使用して、複数の値を mongoose の配列にプッシュする必要があります。小さい配列を使用して実行しようとしましたが、配列がサブ配列として挿入されています。
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");
}
});
上記のコードを 3 回呼び出した結果、以下の結果が得られます。
{ "_id" : ObjectId("502b0e807809d79e84403606"), "name" : "fluffy", "values" : [ [ 2, 3 ], [ 2, 3 ], [ 2, 3 ] ] }
私が欲しいのは次のようなものです:
{ "_id" : ObjectId("502b0e807809d79e84403606"), "name" : "fluffy", "values" : [ 2, 3 ,2 ,3, 2, 3] }
私が気づいたもう 1 つのことは、配列 (値) の型が Number として指定されていることです。次に、'strict' オプションは Number 以外が挿入されないようにしますか? この場合、別の配列の挿入が許可されています。