【发布时间】:2016-03-17 03:09:44
【问题描述】:
我正在我的模型内部创建一个简单的验证,检查日期 (to_date) 是否早于当前日期。
用户提交to_date 的格式为%m/%d/%Y,例如03/15/2016。
我的问题是 rails 给我一个 invalid date 错误,尽管我已经三次检查日期格式是否正确。
这是我的验证:
validate :date_not_before_now
def date_not_before_now
if Date.strptime(self.to_date, '%m/%d/%Y').strftime("%Y-%m-%d") < Time.now.localtime.strftime("%Y-%m-%d")
errors.add(:dates, "should not be in the past.")
end
结束
任何帮助弄清楚为什么这不起作用将不胜感激。
【问题讨论】:
标签: ruby-on-rails validation ruby-on-rails-4 activerecord