【问题标题】:Generating Joi validation a Sequelize model生成 Joi 验证 Sequelize 模型
【发布时间】:2016-04-17 09:42:03
【问题描述】:

我使用expressjs 开发了一个API,Sequelize 是我使用的ORM。我想将 express-validation 集成到我的 API 以验证请求正文和参数。 express-validation 框架使用 Joi 验证规则。但由于我已经在 Sequalize 模型中定义了验证规则,我不喜欢使用 Joi 重新定义验证规则以进行请求正文验证。

我只是想知道是否有任何方法或库可以根据 Sequelize 模型中定义的验证生成 Joi 验证规则。否则,处理此问题的最佳方法是什么?

【问题讨论】:

    标签: node.js validation express sequelize.js joi


    【解决方案1】:

    你检查过joi-sequelize 吗?

    【讨论】:

      【解决方案2】:

      这个问题太老了,但是这个答案可能对那些正在学习语言或可能开始使用 sequelize 的新手有所帮助

      Sequelize 默认提供验证。您可以查看文档

      Sequelize Validation docs

      但是,如果您想为自己的自定义验证器提供自定义“漂亮”消息。您可以随时使用

      @hapi/joi

      以“正常”方式打包。 joi-sequelize 或 sequelize-joi 不仅仅需要提供自定义错误消息。(句点)

      
      function validateData(datas) {
          const schema = Joi.object({
              user_name: Joi.string().min(3).required(),
              user_address: Joi.string().required()
          });
          return schema.validate(datas);
      }
      

      然后使用验证数据

          const { error } = validateData(req.body);
      

      如果任何属性验证失败,它会捕获。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-11-09
        • 2017-05-19
        • 1970-01-01
        • 2013-12-20
        • 2017-01-07
        • 1970-01-01
        • 2020-05-08
        相关资源
        最近更新 更多