[英]Create Nested Sub documents/Sub Elements Using MongoDB and Nodejs
我被困在这里。 基本上,要求是在一个架构中创建一个在其下具有4个子类别级别的类别。 这应该是方法
Category
|
--Sub Category
|
---Sub Sub-Category(Sub Category Level 1)
|
--------Sub Category Level 2
|
------Sub Category Level 3
|
------------ Sub Category Level 4
为了更好地理解模式结构的图像:
我已经通过从一个模式创建单独的模块和CURD数据来创建Category和Sub Category。
我可以为“子子类别”创建另一个页面。 但是我认为这可能会变得更加复杂。 如果有人有更好的方法,请帮助我解决我面临的问题。 这是来自ROBOT 3T的数据图像
我的Robo 3T数据类别插入示例:
我的Robo 3T数据子类别示例插入:
请以更好的动态方式帮助我。 谢谢。 :)
我们通过在MongoDB中使用嵌入式/嵌套文档方法找到了解决此问题的方法。 我们要做的是当我们发现
我为类别和子类别创建了两个模块。 对于类别,我曾经创建过函数。
return new Promise(function (resolve, reject) {
let params= JSON.parse(JSON.Stringify(req.body))
categoryModel
.create(params)
.then(success => {
var data = {
status: 200,
message: "Record save successfully ",
data: success
};
resolve(data);
})
.catch(err => {
reject(err);
});
})
对于子类别,我通过获取类别的ID(取决于您的操作方式,但获取ID进行更新很重要)来使用了update函数。
return new Promise(function (resolve, reject) {
let id = req.body.id;
let params = re
categoryModel.update({ _id: id},
{ $set: { "sub_category.$.name": "sub_category1",
"sub_category.$.type": "video" } })
.then(success => {
var data = {
status: 200,
message: "Record save successfully ",
data: success
};
resolve(data);
})
.catch(err => {
reject(err);
});
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.