【问题标题】:Mongoose enum validation for embedded documents嵌入式文档的 Mongoose 枚举验证
【发布时间】:2013-12-16 00:10:18
【问题描述】:

我的猫鼬模式中有两个枚举验证器:

var UserSchema = new Schema({
    facebookId: {
        type: Number,
        required: true,
        unique: true
    },
    fullName: {
        type: String,
        required: true
    },
    firstName: String,
    lastName: String,
    locale: String,
    gender: {
        type: String,
        uppercase: true,
        enum: ['M', 'F']
    },
    matchPreferences: {
        gender: {
            type: String,
            uppercase: true,
            enum: ['M', 'F']
        },
        minAge: Number,
        maxAge: Number,
        maxRadiusMiles: Number
    }
});

顶级性别属性被强制执行,但我能够为 matchPreferences.gender 保存任何内容,而不会出现任何验证错误。但是,在阅读文档时确实会发生验证错误。

枚举验证是否适用于嵌入式文档?如果不是,还有哪些替代方法可以仅强制执行枚举值?

【问题讨论】:

  • 你有什么例子,这不起作用,我无法重现它,当我尝试将 matchPreferences.gender 设置为'X'时出现以下错误:{'matchPreferences.gender': { message: 'Validator "enum" failed for path matchPreferences.gender with value X', ... } }

标签: node.js mongodb mongoose


【解决方案1】:

4.2.5 版本应该提供对子文档的枚举验证的修复。

Refer this issue page

【讨论】:

    猜你喜欢
    • 2018-11-09
    • 2012-07-26
    • 1970-01-01
    • 2011-12-21
    • 2017-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-15
    相关资源
    最近更新 更多