繁体   English   中英

查找引用ID在数组中的所有文档

[英]Find all documents where ref ID is in array

所以我有CourseSchema ,在里面,我有:

teachers: [{
    id: {
        type: mongoose.Schema.Types.ObjectId,
        ref: "Teacher"
    },
    username: String
}]

现在,我想为一位老师查找所有课程。 我想象做这样的事情:

Course.find().where("teachers.id").equals(user._id).exec(function(err, courses) {};

但这总是返回空数组[]。 现在,我的猜测是因为教师字段是一个数组,而不仅仅是一个字符串。 那么对于数组.where()是否有替代方法?

另外,我是否需要.populate()所有课程,然后搜索?

尝试在find()而不是where().equals() 您实际上并不需要仅填充所有课程来查找老师的课程。

Course.find({"teachers.id" : user._id}, function (err, courses) {
   if (err) console.log(err);
   // Your functions
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM