【发布时间】:2012-01-15 16:40:26
【问题描述】:
根据How do I update Array Elements matching criteria in a MongoDB document?
我想更新数组元素,所以如果一个不匹配就插入它,否则更新它。
我尝试了该问题的答案,如果数组元素已经存在,它可以正常工作。如果元素不存在,则在数组字段下创建一个“$”的子元素。
我的Mongo结构如下:
Widget (collection)
--Name
--Properties (array)
--Name
--Value
我的应用程序从 WebService 调用中获取一个小部件名称和一个属性列表。如果名称已经存在,我希望迭代提供的属性并更新 MongoDB 中的值,或者如果不存在,则将新属性插入到 Properties 数组中。
【问题讨论】: