如何在Mongoose中实现嵌套Populate:查询订单关联的文件夹及媒体文件
Mongoose实现嵌套Populate获取订单关联的文件夹及媒体文件
直接在folders的Populate配置中嵌套添加针对medias的Populate配置即可,修改后的代码如下:
const founded_item = await Order.findById(goal_id) .populate({ path: 'folders', model: Folder, populate: { path: 'medias', model: Media } });
执行该查询后,founded_item.folders数组中的每个文件夹对象,都会自动包含其关联的medias数组(即对应的媒体文件详情)。
如果需要对嵌套返回的媒体文件做字段筛选,还可以添加select选项:
const founded_item = await Order.findById(goal_id) .populate({ path: 'folders', model: Folder, populate: { path: 'medias', model: Media, select: 'filename size uploadTime' // 仅返回指定字段 } });
内容的提问来源于stack exchange,提问作者kotroid
相关产品推荐
相关产品推荐

