【问题标题】:joi-browser is not allowing empty stringjoi-browser 不允许空字符串
【发布时间】:2019-06-01 02:55:39
【问题描述】:

似乎 joi 浏览器不允许有空字符串。这是我的架构:

schema = {
    _id: Joi.string(),
    heading: Joi.string()
      .min(5)
      .max(50)
      .label("Heading")
      .required(),
    subHeading: Joi.string().max(50)
  };

如果我将 subHeading 字段留空(因为它不是必填字段),我会收到错误消息:“"subHeading" is not allowed to be empty"

是否允许在验证中使用空字符串?

我使用 Node.js 作为后端,我的模型如下所示:

const headingSchema = new mongoose.Schema({
  heading: {
    type: String,
    minlength: 5,
    maxlength: 50,
    required: true
  },
  subHeading: {
    type: String,
    minlength: 5,
    maxlength: 50
  }
});

因此,当我使用 Postman 并发送 put 请求时,我可以将 subHeading 字段留空。所以这是 joi-browser 的问题。

【问题讨论】:

    标签: reactjs joi


    【解决方案1】:

    你试过了吗?

    schema = {
        _id: Joi.string(),
        heading: Joi.string()
          .min(5)
          .max(50)
          .label("Heading")
          .required(),
        subHeading: Joi.string().max(50).allow('')
    };
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-11-12
      • 2017-07-11
      • 2018-01-12
      • 2015-10-04
      • 2021-07-06
      • 2014-06-21
      • 2019-08-08
      • 1970-01-01
      相关资源
      最近更新 更多