我使用的是loopback和mongodb。 现在我有一个Model,它的一个属性类型是object数组。 mongo中的文档看起来像这样
{
"id":"123123213",
"name":"Some Name",
"colors":[{
"colorId":"1"
"colorName:"Red"
}, {
"colorId":"2",
"colorName:"Blue"
}]
}
现在我有要求查询更新并删除colors数组中的特定对象。假设我需要仅将colorName
2中的colorId
更新为绿色。
并删除colorId
为2的
如何在环回中实现这一目标? 请指教 ! 谢谢。
答案 0 :(得分:3)
在mongo CLI中,您可以使用$
(位置)来更新嵌入式数组文档中的匹配元素
更新
> db.colors.update({"colors.colorId" :"2"}, {$set : {"colors.$.colorName" : "Green"}})
使用$pull
删除
> db.colors.update({}, {$pull : {"colors" : {"colorId" : "2"}}})