我需要在数据模型中使用健谈的键,并希望使用它们在我的架构定义中进行引用。
const LabelSchema = new mongoose.Schema({
_id: String,
values: [{
value: String,
languageId:{
type: String,
ref: 'Language',
required: true
}
}]
})
const LanguageSchema = new mongoose.Schema({
_id: String,
name: String
})
const Label = mongoose.model('Label', LabelSchema)
const Language = mongoose.model('Language', LanguageSchema)
但是我可以使用不存在的语言参考来保存标签而不会出错
var data = {
'_id': 'myLabel',
values : [{ languageId:'fakeID', value: 'Germany' }]
}
var label = await Label.create(data)
assert(label._id, data._id)
如何通过违反引用对象来防止保存?