鉴于此文档结构(对象数组):
{
"_id" : "2",
"users" : [{
"_id" : "1",
"x" : "1",
"y" : "2",
"name": "blah"
}, {
"_id" : "2",
"x" : "2",
"y" : "2",
"name": "blah"
}],
}
我知道我可以做这样的事情来替换数组中的特定文档:
coll.update( {'_id':'2', 'users._id':'2'}, {$set:{'users.$':{"name":"blahblah",... }}}, false, true)
但是,当指定两个必须都为真的元素级别标准时,是否可以这样做?(即 x 和 y)。我只见过一个例子,我似乎无法让它工作。也许是这样的?:
coll.update( {'_id':'2', 'users.x':'2', 'users.y':'2'}, {$set:{'users.$':{"name":"blahblah",... }}}, false, true)