我有这样的数据结构,并且正在使用猫鼬 findOne 查询。在此,假设用户在项目“A”下输入另一个名为“Task1”的 itemName,则发送结果,因为任务已经存在。
基本上,我无法理解如何编写查询以获取详细信息,以便遍历“itemName”,它是“items”数组中的一个字段,它是“projects”数组中的一个对象中的一个字段。此外,关于如何继续使用 findOneAndUpdate() 来更新 itemName 或其中的子项。
“数据”: {
"userId": "iWCEPYjnP",
"projects": [
{
"name": "A",
"_id": "6080b9f8a414da3bc889aa60",
"items": [
{
"itemName": "Task_1",
"completed": false,
"sub_items": [],
"_id": "6080ba17a414da3bc889aa61"
},
{
"itemName": "Task_2",
"completed": false,
"sub_items": [],
"_id": "6080ba23a414da3bc889aa62"
}
]
}
],
"createdOn": "2021-02-28T20:27:37.000Z"
}