所以我有一个Mongoose查询问题,我似乎无法弄清楚 . 我正在尝试查询模式以查找集合中的所有文档,这些文档在一些地方中有一个参数指定了用户ID ...到目前为止,我所拥有的是:

架构:

var Module = new Schema({
   template: { type: Schema.ObjectId, ref: 'template' },
   owner: { type: String, required: true, index: { unique: false } },
   primary: { type: Schema.ObjectId, ref: 'User' },
   users: [{ type: Schema.ObjectId, ref: 'User' }],
   data: [],
   children: [{ type: Schema.ObjectId, ref: 'Module' }],
   parent: { type: Schema.ObjectId, ref: 'Module' }
});

查询:

Module.find()
        .or([{owner: req.user.id}, {primary: req.user.id}])
        .populate('primary users children parent template')
        .exec(function (err, modules) {
    ...
    }

到目前为止,它似乎正确地找到了 req.user.id 作为主要字段或所有者字段的文档,但是如何还返回用户数组也搜索此值的所有文档?

谢谢!