我有以下架构,其中项目类型可能会有所不同,并在 connections.kind
中提到。
var userSchema = new Schema({
name: String,
connections: [{
kind: String,
item: { type: ObjectId, refPath: 'connections.kind' }
}]
});
var organizationSchema = new Schema({ name: String });
我正在尝试进行动态查找,以便填充项目对象。但这似乎不起作用。
db.users.aggregate([
{
$lookup:{
from: '$connections.kind',
localField: 'connections.item',
foreignField: '_id',
as: 'items'
}
}
])
我知道我可以用 mongoose.populate
做到, 但想知道 $lookup 是否可行
最佳答案
到目前为止,您还不能。 from
字段不能是表达式,必须是字符串文字。但是,您可以在此处跟踪一个 Unresolved 问题,它似乎正是您所需要的:https://jira.mongodb.org/browse/SERVER-22497 .
关于node.js - Mongodb $lookup 动态集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39902878/