在Mongo $set
操作中,如何通过将字段array
与名为'idGen'
的变量匹配来识别'id'
中的特定对象。因此,通过将'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 :(得分:0)
Collection.update({'createdBy': userId, 'array': {$elemMatch: {idGen': id}}}, {$set: {'array.$.fieldStr': value}})
elemMatch匹配数组中的对象,其中'id'变量idGen与'id'变量匹配。 $
是我的占位符,以便定位'fieldStr'字段,然后我可以将值设置为。