繁体   English   中英

如何在 mongoose 中填充对象数组?

[英]How can I populate array of objects in mongoose?

我的架构看起来像:

const mock =  new Schema({
   category:...,
   name:....,
   doneBy: [{
       type:mongoose.Schema.Types.ObjectId,
       ref: 'User'
   }]
})

查询:'doneBy' 属性是完成任务的特定用户的数组。 当我 console.log 它仅将 id 打印为“doneBy: [id1,id2,id3......]”。 现在我想填充这些 id 以获取特定用户的信息。 请分享方法。

您可以像这样在查询中填充它:

mock.find({...}).populate('doneBy')

如果您想填充用户但只填充 select 某些字段(例如,用户名):

mock.find({...}).populate({ path: 'doneBy', select: { username: 1 } }) // _id will also be returned by default

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM