gpt4 book ai didi

javascript - Mongoose :在一次调用中填充多个查询

转载 作者:IT王子 更新时间:2023-10-29 02:55:03 26 4
gpt4 key购买 nike

在 Mongoose 中,我可以使用查询填充来填充查询后的附加字段。我还可以填充多个路径,例如

Person.find({})
.populate('books movie', 'title pages director')
.exec()

但是,这会生成一个对书的查找,收集标题、页数和导演的字段 - 也会生成一个对电影的查找,收集标题、页数和导演的字段。我想要的是仅从书中获取标题和页面,从电影中获取导演。我可以这样做:

Person.find({})
.populate('books', 'title pages')
.populate('movie', 'director')
.exec()

这给了我预期的结果和查询。

但是有没有办法让第二个代码段的行为使用与第一个代码段类似的“单行”语法?这样做的原因是,我想以编程方式确定填充函数的参数并将其输入。我不能对多个填充调用执行此操作。

最佳答案

在查看了 mongoose 的源代码之后,我解决了这个问题:

var populateQuery = [{path:'books', select:'title pages'}, {path:'movie', select:'director'}];

Person.find({})
.populate(populateQuery)
.execPopulate()

关于javascript - Mongoose :在一次调用中填充多个查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21069813/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com