Mongoose Schema枚举validationstring数组

枚举validation在单个string中工作:

var songSchema = new Schema({ vocalRange: { type: String, enum: ["Soprano", "Mezzo-soprano", "Contralto", "Alto", "Tenor", "Baritone", "Bass"], } }) 

尝试发布任何东西,但枚举中的东西通过mongoose返回validation错误。

但是,以下内容:

 var songSchema = new Schema({ vocalRange: { type: [String], // this is what changed enum: ["Soprano", "Mezzo-soprano", "Contralto", "Alto", "Tenor", "Baritone", "Bass"], } }) 

允许我在没有任何validation的情况下为vocalRange任何内容。 这是怎么回事? 为什么不validation一个string数组像一个string呢?

回答我的评论:

 vocalRange: [{ type: String }] 

应该pipe用。