Как вставить массив объектов в массив в 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");
        }
});

Результат трехкратного вызова приведенного выше кода дает следующий результат:

{ "_id" : ObjectId("502b0e807809d79e84403606"), "name" : "fluffy", "values" : [ [ 2, 3 ], [ 2, 3 ], [ 2, 3 ] ] }

В то время как я хочу что-то вроде этого:

{ "_id" : ObjectId("502b0e807809d79e84403606"), "name" : "fluffy", "values" : [ 2, 3,2,3, 2, 3] }

Еще одна вещь, которую я заметил, заключалась в том, что тип в массиве (values ​​)указан как число, тогда не будет ли параметр «строгий» гарантировать, что ничего, кроме чисел, не будет вставлено? В этом случае допускается вставка другого массива.

37
задан Pranil Dasika 15 August 2012 в 04:56
поделиться