Hanami 验证年份小于 X

Hanami validate year less than X

我想检查 validator.rb 文件中的日期对象是否有小于 10000 年的年份字段。

required(:my_date_object).maybe(
            :date?,
            lt?: '10000-01-01'
          )

当运行系统测试时,出现以下错误:

ArgumentError:
   comparison of Date with String failed

我是否应该考虑使用 to_s 或类似方法将日期字段转换为字符串,然后进行正则表达式格式检查?或者是否有更直接的方法来检查日期是否小于 10000 年?

您需要为 lt? 创建一个 Date

可以这样写:

required(:my_date_object) { lt?(Date.new(10000, 1, 1)) }