我定义了一个如下所述的模型:
var QuestionSchema = new Schema({
askedBy: {type:ObjectId, Ref:'User'},
relatedCourses: [
{type: ObjectId, ref:'Course'}
]
})
module.exports = mongoose.model('Question', QuestionSchema, 'Questions')
(由于存在错误)在保存/创建类型为Question的新文档时,relatedCourses字段被分配给除“Course”之外的对象ID数组,并且mongoose没有产生任何错误,并保存了文档 .
花了一些时间来挖掘并发现这个错误 .
我的问题是,为什么mongoose没有检查确切的Schema类型?当任何ObjectId足够时,在ref字段中提及'Course'的需要是什么?
1 回答
我找到了mongoose-id-validator,它正在进行必要的类型验证 .