在mongoose中填充嵌套数组

在mongoose中填充嵌套数组

如何在示例文档中填充“组件”:

  {
    "__v": 1,
    "_id": "5252875356f64d6d28000001",
    "pages": [
      {
        "__v": 1,
        "_id": "5252875a56f64d6d28000002",
        "page": {
          "components": [
            "525287a01877a68528000001"
          ]
        }
      }
    ],
    "author": "Book Author",
    "title": "Book Title"
  }

这是我的JS,我通过Mongoose获取文档:

  Project.findById(id).populate('pages').exec(function(err, project) {
    res.json(project);
  });


月关宝盒
浏览 1026回答 3
3回答

白衣非少年

Mongoose 4.5支持这一点Project.find(query)   .populate({       path: 'pages',      populate: {        path: 'components',        model: 'Component'      }    })   .exec(function(err, docs) {});

江户川乱折腾

这对我行得通: Project.find(query)   .lean()   .populate({ path: 'pages' })   .exec(function(err, docs) {     var options = {       path: 'pages.components',       model: 'Component'     };     if (err) return res.json(500);     Project.populate(docs, options, function (err, projects) {       res.json(projects);     });   });文档:Model.populate
打开App,查看更多内容
随时随地看视频慕课网APP