嗨,我有一个MongoDB集合,其子文档如下:
const classesSchema = new mongoose.Schema({
courseId: {type: String, required: true},
moduleId: {type: String, required: true},
title: enter code here{type: String, required: true},
description: {type: String, required: true},
source: {type: String, required: true},
position: {type: String, required: false},
status: {type: String, uppercase: true, enum:['ENABLED', 'DISABLED'],
default: 'ENABLED'}
},{
timestamps: true
})
这:
const Courses = new mongoose.Schema({
title: {type: String, required: true},
tags: {type: String, required: false},
description: {type: String, required: true},
thumbnail: {type: String, required: false},
author: {type: String, required: false},
status: {type: String, uppercase: true, enum:['ENABLED', 'DISABLED'], default: 'ENABLED'},
courses_modules: [modulesSchema],
courses_classes: [classesSchema],
},{
timestamps: true
})
所以我需要使用Mogoose编写一个简单的函数,以列出所有modulesId等于xxx但不起作用的Course_classes ...
const courseClassesGetbyId =(req, res, next)=>{
let _id = req.params.courseId
let moduleId = req.params.moduleId
console.log(`Courses to module ${moduleId}`);
Courses.findById({'courses_classes.moduleId' : moduleId},function(err, course){
res.status(200).send(course.courses_classes);
});
}