我有以下问题,我想用路径 id.metadata.panels.items 更新一个文档,其中 panel 是一个数组,items 是一个数组。我的搜索查询查看项目并仅显示符合 metadata.panels.items.member.type: 'owner' 条件的项目 - 然后我想将 'owner' 更新为 'account'。
当我尝试更新与更新路径相同的搜索路径时,我收到一条错误消息:无法使用部分 metadata.panels.items.member.type 来遍历元素。
文件有自己的
我该如何解决这个问题?
我已经尝试使用嵌套的 forEach 语句遍历集合以遍历每个数组,但我不确定下一步该做什么。
var records = db.getCollection('sample').find({"metadata.panels.items.member.type":"
[owner]"})
records.forEach(function(id) {
var newFields = [];
metadata.panels.forEach(function(panel, panelIndex){
panels.items.forEach(function (item, itemIndex) {
})
})
})
示例文档结构:
{
"panels": [{
"name": "categories",
"items": [{
"member": {
"type": "[Owner]",
"subtype": "[Contractor]"
},
"format": {
"members": {}
}
}]
},
{
"name": "localisation",
"items": [{
"member": {
"city": "NY",
"state":"NY"
}
}]
}]
}
预期结果:
{
"panels": [{
"name": "categories",
"items": [{
"member": {
"type": "[Account]",
"subtype": "[Contractor]"
},
"format": {
"members": {}
}
}]
},
{
"name": "localisation",
"items": [{
"member": {
"city": "NY",
"state":"NY"
}
}]
}]
}