Javascript 在mongoose中获取参考集合

Javascript 在mongoose中获取参考集合,javascript,node.js,mongodb,mongoose,Javascript,Node.js,Mongodb,Mongoose,我的应用程序在MongoDB中有三个集合用户、频道和提要 用户可以注册频道。所以频道将有一堆注册该频道的用户的参考ID 频道有多个提要。提要文档具有频道的引用ID 我想根据用户订阅的频道检索用户提要。 如何在Mongoose中实现这一点?您可以使用ObjectId模式类型引用其他集合中的文档。然后,在查询父文档时,可以使用填充这些文档。例如: var UserSchema = new Schema({ // Some fields channels: [{type: Object

我的应用程序在MongoDB中有三个集合用户、频道和提要

用户可以注册频道。所以频道将有一堆注册该频道的用户的参考ID

频道有多个提要。提要文档具有频道的引用ID

我想根据用户订阅的频道检索用户提要。
如何在Mongoose中实现这一点?

您可以使用
ObjectId
模式类型引用其他集合中的文档。然后,在查询父文档时,可以使用填充这些文档。例如:

var UserSchema = new Schema({
    // Some fields
    channels: [{type: ObjectId, ref: 'Channel'}]
});
然后,在获取用户时,您可以使用以下命令:

User.findById(user._id).populate('channels').exec(function(err, userWithChannels) {
    var channels = userWithChannels.channels;
    // Do your work
});

如果您想要相反的关系,您应该能够反转关系。

谢谢。在频道中获取提要时,我也必须这样做,对吗?是的,在所有需要引用其他集合的模型中都可以这样做。