【问题标题】:How to validate query parameters in Reform::Form in Trailblazer?如何在 Trailblazer 的 Reform::Form 中验证查询参数?
【发布时间】:2019-09-20 11:04:49
【问题描述】:

我正在使用 Trailblazer 开发一个 GET API,它接收逗号分隔的数字 ID 列表。 desired-path?page_number=4&ids=765,359249,4011 如何通过 Reform::Form 验证 ids 查询参数中只有整数

【问题讨论】:

    标签: ruby validation reform


    【解决方案1】:

    这取决于您是否使用dry-validation 版本0.x 或更高版本。您的参数名称让我相信:

    • 它没有模型支持
    • 不需要

    出于这些原因,使用optional 进行验证并使用virtual: true 注释属性(相关文档hereherehere):

    class MyContract < Reform::Form
      property :ids, virtual: true
    
      validation do
        # for 0.x:
        #   optional(:ids).each(:int?)
        # for 1.x:
        optional(:ids).array(:integer)
      end
    end
    

    在版本0.x 上验证数组输入的文档是here1.x 的相同是here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-02-14
      • 1970-01-01
      • 2013-02-14
      • 2020-11-18
      • 2017-01-12
      • 2022-08-17
      • 1970-01-01
      • 2018-07-28
      相关资源
      最近更新 更多