Tek bir çağrı kullanarak, çoklu değerleri bir diziye dönüştürmem gerekiyor. Daha küçük bir dizi kullanarak yapmayı denedim ancak dizi bir alt dizi olarak ekleniyor.Tek bir aramayla bir dizi nesneyi mongoose'daki bir diziye nasıl aktarılır?
{ "_id" : ObjectId("502b0e807809d79e84403606"), "name" : "fluffy", "values" : [ 2, 3 ,2 ,3, 2, 3] }
Fark başka şey olmasıydı:
ne istiyorum Oysa{ "_id" : ObjectId("502b0e807809d79e84403606"), "name" : "fluffy", "values" : [ [ 2, 3 ], [ 2, 3 ], [ 2, 3 ] ] }
böyle bir şeydir:
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");
}
});
çağıran Yukarıdaki kod sonucu üç kez aşağıda sonuç verir dizideki (değerler) tip, Number olarak belirtilir, daha sonra 'katı' seçeneği, Sayılar dışındaki herhangi bir şeyin eklenmediğinden emin olmaz mıydı? Bu durumda başka bir dizinin eklenmesine izin verilir.
NB: // www: Ayrıca [$ addToSet] (http bakmak isteyebilirsiniz .Mongodb.org/display/DOCS/Güncelleniyor/# Güncelleniyor -% 24addToSetand% 24each), yalnızca bir diziye değer eklemek için kullanılabilir. – Stennie
Teşekkürler Stennie! Bu işe yarıyor. Bu kısımdaki belgeleri kaçırdım. –
@Stennie bu sadece dizileri birleştirmek için değil, tek tek elemanlar için çalışır. – Tom