我有这个架构:
var UserSchema = new Schema({
documento: []
});
和这类文件:
var RgSchema = new Schema({
tipo: 'RG',
numero: stringType(),
orgaoEmissor: stringType(),
dataExpedicao: dateType()
});
var CpfSchema = new Schema({
tipo: 'CPF',
numero: stringType()
});
如何在documento: []
中设置不同类型的架构(RgSchema或CpfSchema)?
有点这样:
documento: [RgSchema || CpfSchema]
答案 0 :(得分:1)
我认为你不能在当前版本的mongoose中实现这一点。我建议您选择tipo
作为enum
的两者的通用架构。
var CommonSchema = new Schema({
tipo: {type:String, enum: ['RG', 'CPF']}
numero: stringType(),
orgaoEmissor: stringType(),
dataExpedicao: dateType()
});
其他选项是对不同的架构使用不同的ref
。
var UserSchema = new Schema({
documenRG: [],
documenCPF: []
});