gpt4 book ai didi

javascript - 填充嵌套引用 mongoosejs 的更好方法

转载 作者:行者123 更新时间:2023-12-03 09:23:50 27 4
gpt4 key购买 nike

我正在尝试填充嵌套在其他引用中的引用。我已经可以工作了,但看起来有点老套,想知道是否还有其他方法可以实现这一点:

return Q.ninvoke(BoardSchema, 'find', {'_id': id}).then(function(board) {
return Q.ninvoke(BoardSchema, 'populate', board, {path: 'lanes'}).then(function(board){
return Q.ninvoke(LaneSchema, 'populate', board[0].lanes, {path: 'cards'}).then(function(lanes){
board.lanes = lanes;
return board;
});
});
});

是否有某种方法可以填充所有引用,或者返回第二个填充作为董事会调用的一部分,而无需像我现在一样手动设置?

最佳答案

您应该能够填充多个来填充嵌套文档,如下所示:

Item.find({}).populate('foo foo.child').exec(function(err, items) {
// Do something here
});

这要求在架构定义中设置引用。

如果这不起作用(老实说,大多数情况下由于某种原因),您可以链接您的发现。但这与您的代码没有太大区别。

Item.find({}).populate('foo').exec(function(err, items) {
Item.find(items).populate('bar').exec(function(err, items) {
// Even more nests if you like
});
});

关于javascript - 填充嵌套引用 mongoosejs 的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31747283/

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