有没有一种方法可以基于子文档对象ref查询文档?

时间:2020-04-24 20:11:04

标签: node.js mongodb mongoose mongoose-schema

假设我们有一个如下所示的模式:

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。

1 个答案:

答案 0 :(得分:0)

如果涉及多个集合,则此任务需要使用聚合管道。