代码之家  ›  专栏  ›  技术社区  ›  user2960993

参考未检查精确类型

  •  -1
  • user2960993  · 技术社区  · 7 年前

    我定义了一个模型,如下所述:

    var QuestionSchema = new Schema({
    askedBy: {type:ObjectId, Ref:'User'},
    relatedCourses: [
        {type: ObjectId, ref:'Course'}
    ]
    })
    module.exports = mongoose.model('Question', QuestionSchema, 'Questions')
    

    (由于一个错误)在保存/创建类型为问题的新文档时,relatedCourses字段被分配给除“Course”之外的对象ID数组,mongoose没有产生任何错误,并保存了文档。

    挖掘并发现这个错误花了一些时间。

    我的问题是,为什么猫鼬不检查确切的模式类型?当任何ObjectId足够时,在ref字段中提及“Course”有什么必要?

    1 回复  |  直到 7 年前
        1
  •  0
  •   user2960993    7 年前

    我找到了mongoose id验证器,它正在执行所需的类型验证。