Ссылка на Mongoose не помещает ObjectId в родительский документ - PullRequest
0 голосов
/ 05 февраля 2019

Моя модель Mongoose не помещает 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);
};

1 Ответ

0 голосов
/ 05 февраля 2019

Вам также необходимо обновить ваш пункт меню.Например, скажем, _id вашего нового sub_item - 123456. Вам необходимо обновить ваш menuItem следующим образом:

menuItem.subitem.push(123456);
menuItem.save();

Это добавит _id к массиву подэлементов и, таким образом, даст menuItem ссылку науказанный подэлемент

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...