猫鼬填充在带有"path"选项的子文档数组中不起作用



这是我的Mongoose模式:

const productSchema = mongoose.Schema({
writer: {
type: Schema.Types.ObjectId,
ref: 'User'
},
schedule: [{
dateTime: {
type: String,
unique: 1            
},
candidates: [{
type: Schema.Types.ObjectId,
ref: 'User'
}],
attorn: {
type: Schema.Types.ObjectId,
ref: 'User'
}
}]
...

这是我和候选人一起得到我的项目的地方:

Product.find({ '_id': { $in: productIds } })
.populate('writer')
.populate({ 
path: 'schedule',
populate: {
path: 'candidates',
model: 'User'
} 
})
.exec((err, product) => {
if (err) return res.status(400).send(err)
return res.status(200).send(product)
})
  1. 这段代码的结果是一个只填充了'writer'和'candidate '空数组的产品
  2. 如果我删除填充'候选人'的行,它返回'候选人'的_id数组
  3. 我如何填充"候选人"数组?

你可以试试这个吗

Product.find({ _id: { $in: productIds } })
.populate("writer")
.populate({
path: "schedule.candidates",
})
.populate({
path: "schedule.attorn",
})
.exec((err, product) => {
if (err) return res.status(400).send(err);
return res.status(200).send(product);
});

相关内容

  • 没有找到相关文章

最新更新