我想检查validator.rb
文件中的日期对象是否有年份字段小于10000年。
required(:my_date_object).maybe(
:date?,
lt?: '10000-01-01'
)
运行系统测试时,会显示以下错误:
ArgumentError:
comparison of Date with String failed
我应该考虑使用to_s
或类似的东西将日期字段转换为字符串,然后进行正则表达式格式检查吗?或者是否有更简单的方法来检查日期是否小于10000年?
答案 0 :(得分:4)
您需要为Date
创建lt?
。
你可以写如下:
required(:my_date_object) { lt?(Date.new(10000, 1, 1)) }