假设我们有一个如下所示的模式:
const RandomSchema = new Schema({
name: String,
randomField: String,
subDoc: {
name: String,
refDoc: {
type: Schema.Types.ObjectId,
ref: 'OtherModel',
required: true,
},
},
}, options);
我们的OtherModel
具有如下所示的模式:
const OtherModel = new Schema({
name: String,
funFact: String,
}, options);
从我的应用程序的前端,我想查询RandomSchema模型,并在subDoc.refDoc.funFact === someValue
处返回该模型的所有实例。
这可能吗?我知道我们有在返回子文档时填充这些子文档的方法,但只有在返回匹配的文档之后才会发生,在这种情况下,我们需要了解的不仅仅是refDoc的objectId。
答案 0 :(得分:0)
如果涉及多个集合,则此任务需要使用聚合管道。