猫鼬:嵌套级别的多个填充

Mongoose: Multiple Populate on nested level

我认为代码示例比问题的英文解释要好得多。

Car
.find()
.populate({
  path: 'partIds',
  model: 'Part',
  populate: {            // First Populate
    path: 'otherIds',
    model: 'Other'
  }
  populate: {            // Second Populate
    path: 'ModelIds',
    model: 'Model'
  }
})

所以,基本上,我想在一个嵌套级别中进行双重填充。虽然 Mongoose 4.5 支持如下内容。

Car
 .find()
 .populate({ 
   path: 'partIds',
   model: 'part',
   populate: {            // Only single nested populate
     path: 'otherIds',
     model: 'Other'
   }
})

请告诉我,我们该怎么做? 任何形式的帮助将不胜感激。

您可以在 populate 中为多个字段使用数组。

Car
.find()
.populate({
  path: 'partIds',
  model: 'Part',
  populate: [{            // First Populate
    path: 'otherIds',
    model: 'Other'
  },
  {                      // Second Populate
    path: 'ModelIds',
    model: 'Model'
  }]
})