我的猫鼬模型没有将的ObjectId的父文档中引用到另一个集合的子文档。我怎样才能做到这一点?
这是我的模型:
menu_items.js
var menuItems = new mongoose.Schema({
title : String,
subitem: [{type: mongoose.Schema.Types.ObjectId,ref: 'sub_items'}]
}, {collection: 'menu_items'});
module.exports = mongoose.model("menu_items", menuItems);
sub_items.js
var subItems = new mongoose.Schema({
title: String,
},{collection: 'sub_items'});
module.exports = mongoose.model("sub_items", subItems);
我的子项后功能ExpressJS:
postController.postSubitems = function(req,res,item) {
var id = req.body.id;
var saveData = {
title: req.body.sub_item
};
var data = new item(saveData);
saveToDB(data,res);
};
您还需要更新您的菜单项为好。例如,假设你的新分项目的_id为123456你需要更新你的菜单项,如下所示:
menuItem.subitem.push(123456);
menuItem.save();
这将_id添加到分项目阵列,并且因此给菜单项到指定的分项目的引用