繁体   English   中英

仅允许 Joi 模式中键的特定值

[英]Allow only specific values for key in Joi schema

除了正则表达式模式之外,还有其他方法可以在 Joi 验证模式中为键设置特定值吗?

我的示例架构:

const schema = joi.object().keys({
    query: joi.object().keys({
        // allow only apple and banana
        id: joi.string().regex(/^(apple|banana)$/).required(),
    }).required(),
})

除了正则表达式模式以外,还有其他方法可以在Joi验证模式中为密钥设置特定值吗?

我的示例架构:

const schema = joi.object().keys({
    query: joi.object().keys({
        // allow only apple and banana
        id: joi.string().regex(/^(apple|banana)$/).required(),
    }).required(),
})

除了正则表达式模式以外,还有其他方法可以在Joi验证模式中为密钥设置特定值吗?

我的示例架构:

const schema = joi.object().keys({
    query: joi.object().keys({
        // allow only apple and banana
        id: joi.string().regex(/^(apple|banana)$/).required(),
    }).required(),
})

您可以尝试使用 .valid() 仅允许使用该特定字符串的 joi 。

const schema = joi.object().keys({
  query: joi.object().keys({
    role: joi.string().valid('admin','student').required(), // joi would allow only if role is admin or student.
  }).required(),
})

这绝对等同于在 mongoose ODM 中给出“enam”字段来表示 mongodb 中的对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM