2015-04-16 54 views
0

在Mongo $set操作中,如何通過將'idGen'字段與'id'變量進行匹配來標識array中的特定對象。因此,通過將'idGen'與此對象中的變量'id'進行匹配,如何將value變量設置爲此對象內名爲fieldStr的字段?

在服務器上,我通過匹配userId來找到該集合。

var id 
var fieldStr 
var userId = this.userId 

我想:

Collection.update(
{'createdBy': userId, 'array.$.idGen': id}, 
{$set: 
     {'array.$.fieldStr': value} 
}) 

因此,大家可以看到,'idGen'字段是陣列中的每個對象的唯一領域。

+0

對不起,我弄明白了。我不知道我是否應該刪除我的問題。 – meteorBuzz

回答

0
Collection.update({'createdBy': userId, 'array': {$elemMatch: {idGen': id}}}, {$set: {'array.$.fieldStr': value}}) 

elemMatch將數組中的對象與'id'變量idGen匹配到'id'變量。 $是我的佔位符,用於定位'fieldStr'字段,然後我可以將其設置爲。

相關問題