我正在寻找用Mongoose填充文档的各种路径的方法,但是我找不到一种动态链接各种填充方法的方法。一次性检索所有这些字段以提高性能非常重要。这是代码:
let fields = [path1, path2, ...]
let result = document.findById(id).populate(path1).populate(path2).populate(...)
你们中有人知道这种法术吗?
我不确定这是否是您要找的东西:
let query = document.findById(id)
for (const field of fields) {
query = query.populate(field)
}
const result = await query
如果您想使用ES6 .reduce():
const result = await fields.reduce((query, field) => query.populate(field), document.findById(id))
编辑:
从猫鼬v3.6起,您还可以使用 .populate(fields.join(' '))
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句