2013-11-26 78 views
1

我有一個包含嵌套關聯數組(注意下面的模式)的註釋部分的MongoDB集合。我遇到了插入新筆記的問題。理想情況下,我想這樣做如何在MongoDB中插入嵌套關聯數組

var label_var = '3'; 
db.collection.update({ _id: ObjectID(id) }, { $set: { notes.label_var : data} } ... 

不幸的是點符號並不需要的變量,我不能在更新語句中使用注意事項[label_var。任何幫助表示讚賞。

模式:

[ 
    { 
     _id: GUID, 
     title: 'title', 
     notes: { 
      '1': { 
       content: 'content here' 
      }, 
      '2': { 
       content: 'content here' 
      } 
     } 
    } 
] 

回答

1

編程您update調用之前,您$set價值構建:

var label_var = '3'; 
var set_value = {}; 
set_value['notes.' + label_var] = data; 
db.collection.update({ _id: ObjectID(id) }, {$set: set_value}, ...); 
+0

謝謝!完美的作品。 – user41293