проверьте схему Студент и Тема
var Schema = mongoose.Schema
var studentSchema = Schema({
name: String,
roll: Number,
subject: [{
type: Schema.Types.ObjectId,
ref: 'subject'
}]
})
var subjectSchema = Schema({
name: String,
marks: Number,
student: [{
type: Schema.Types.ObjectId,
ref: 'student'
}]
})
var studentModel = mongoose.model('student', studentSchema);
var subjectModel = mongoose.model('subject', subjectSchema);
Я хочу, чтобы при сохранении нового предмета его поле студента получало идентификатор студента, а поле предмета соответствующего студента - идентификатор предмета.
Я написал следующий код
var subject = new subjectModel({
name: "FCPC",
marks: 79,
})
studentModel.findOne({name:"Yname"}).exec(function(err,stu){
subject.student=stu._id;
subject.save();
studentModel.updateOne({_id:stu._id},{$push:{subject:subject._id}}).exec();
})
Он работает нормально, но, пожалуйста, скажите мне, это правильный подход и есть ли лучший способ сделать это?