[英]How to add new objects inside nested array for mongodb using node.js?
[英]How to add object in Array of Objects using Node js in Mongodb?
我想在MasterCourse
中更新我的courseModules
。 在下面的 JSON 中,我在courseModules
中有两个对象。 我想如果moduleId
存在于courseModules
中然后更新它,否则创建一个新的 object 并返回具有更新值的courseModules
。 我正在使用 Node.js 和 mondodb,mongoose。无法找到如何实现此功能。
JSON 或 MONGODB 数据:
"MasterCourse": [
{
"_id": "6392f2611e7d670eca9712fa",
"courseTitle": "My Course Title",
"awardURL": "award.png",
"courseModules": [
{
"moduleId": 0,
"moduleTitle": "Module Title 1",
"moduleDescription": "Module 1 description",
"totalSessions": 3,
"_id": "6392f2611e7d670eca97e12d"
},
{
"moduleId": 1,
"moduleTitle": "ModuleTitle 2",
"moduleDescription": "Module 2 description",
"totalSessions": 4,
"_id": "6392f2611e7d670eca9711wd"
},
],
}
]
查询要执行:
{
"moduleId": 2,
"moduleTitle": "Module Title 3",
"moduleDescription": "Module 3 description",
"totalSessions": 8,
}
如果项目不存在则添加 -
masterCourse.updateOne({ "_id": req.params.id }, { $addToSet: { "courseModules": req.body } })
更新值(如果存在)-
masterCourse.updateOne({ "_id": req.params.id, "courseModules._id": ModuleID }, { $set: { "courseModules": req.body } })
这些查询对我有用,您可以根据您的数据或要求更改变量的名称。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.