Я получаю студент от параметров и ищу модель регистрации для регистрации после получения регистрационной информации, в которой указаны studentID и courseID. Я хочу найти By courseID в модели курса, чтобы найти подробную информацию о курсе и отправить обратно статус. продолжаю получать ошибку, когда я пытался сделать это таким образом. Пожалуйста, помогите
Схема курса
const mongoose = require("mongoose");
//Course Schema
//Faculty can add courses to the DB
const courseSchema = mongoose.Schema({
_id: mongoose.Schema.Types.ObjectId,
courseID: { type: String, required: true },
courseName: { type: String, required: true },
courseDept: { type: String, required: true },
courseDescription: { type: String, required: true },
courseRoom: { type: String, required: true },
waitListCap: { type: Number, required: true },
courseTeam: { type: String },
taughtBy:{ type: String }
});
module.exports = mongoose.model("Course", courseSchema);
Схема регистрации
const mongoose = require("mongoose");
//Course Schema
//Faculty can add courses to the DB
const registrationSchema = mongoose.Schema({
_id: mongoose.Schema.Types.ObjectId,
courseID: { type: mongoose.Schema.Types.ObjectId, ref: "Course" },
studentID:{ type: mongoose.Schema.Types.ObjectId, ref: "User" }
});
module.exports = mongoose.model("Registration", registrationSchema);
router.get("/classregistration/:id", (req, res, next) => {
Registration.find({
studentID: req.params.id
})
.exec()
.then(data => {
data.map(single => {
Course.find({
courseID: single.courseID
}).exec().then(course => {
console.log('from course', course)
const response = {
course: course.map(singleData => {
return {
id: singleData._id,
courseID: singleData.courseID,
courseDept: singleData.courseDept,
};
})
};
})
res.status(200).json(response);
})
})
.catch(err => {
console.log(err);
res.status(500).json({
error: err
});
});
})