2016-03-15 197 views
1

假設我有兩個模式:
1. UserEnrolledCourses貓鼬查詢

var userCoursesSchema = new mongoose.Schema({ 
    user: { type: mongoose.Schema.Types.ObjectId, ref: 'users'}, 
    courseId: { type: mongoose.Schema.Types.ObjectId, ref: 'courses'}, 
    isEnrolled: Boolean, 
}); 

2. CourseResources

var resourcesSchema = new mongoose.Schema({ 
    courseId: { type: mongoose.Schema.Types.ObjectId, ref: 'courses', required: true }, 

    type: {type:String, required:true}, 

}); 

兩者都從courses共享相同的參考courseId架構。
所以,我的目標是從查詢生成結果,對於每個courseId一個用戶註冊,列出所有可用的資源。那可能嗎?

回答

1

在mongoDB中,您正在對一個具體集合執行查詢。唯一的例外是對於mongodb 3.2和更高版本的聚合中的新方法$ lookup的左外連接。看看documentation