我有几个模型具有日期属性,对于每个模型,我想根据给定范围验证这些日期。一个基本的例子是:如何根据特定范围验证模型的日期属性(在运行时评估)
validates_inclusion_of :dated_on, :in => Date.new(2000,1,1)..Date(2020,1,1)
理想情况下,我想,以评估在运行时的日期范围,使用类似的方法为named_scope
使用,如:
validates_inclusion_of :dated_on, :in => lambda {{ (Date.today - 2.years)..(Date.today + 2.years)}}
以上不工作的当然,那么达到相同结果的最佳方式是什么?
谢谢,这是有帮助的,但我刚编辑我的问题,以改善解释。我理想的是寻找一种更通用的解决方案,我可以跨模型和任何给定的日期字段使用该解决方案。 – Olly
我更新了这个解决方案以更接近地匹配更新的用例,但我更喜欢我的其他解决方案。 –