2015-11-30 33 views
3

我想使用'$ set'來更新嵌入式文檔,但該字段是一個變量。

說我有這樣一個文件:

{'_id': ObjectID, 
'people': { 
    'A': {'age': 20} 
} 
} 

現在我想一個新的人加入到people。我可以使用$set: {'people.B':{'age': 25},但如果名稱(而不是B)是變量?

我正在使用Node.js 5.1和'mongodb'驅動程序。

+0

聽起來像'people'應該是一個數組。是否有明確標註對象「A」,「B」等的原因? –

回答

1

您需要使用[]運算符動態構建查詢。

var b = 'B'; 
var update = {}; 
update['people.' + b] = { 'age': 25 }; 
db.collection.update({}, { '$set': update }) 
相關問題