日期验证

时间:2009-05-05 08:12:13

标签: ruby

嗨,大家好我有一个验证日期的问题,如果它是错的。如果我在数据库中搜索2月31日的记录它只显示我在服务器中的错误,它没有显示任何东西..我不知道该怎么做才能帮助...

我存储哈希日期的代码是 @start = "#{params[:start][:day]}-#{params[:start][:month]}-#{params[:start][:year]}" 和传递是`@start_date = Date.parse(@start)

` 并且在检测到传递的日期错误后立即返回,并且它没有给我机会验证它。

2 个答案:

答案 0 :(得分:5)

如果你传递了一个无效的日期,例如2月31日,则Date.parse会引发ArgumentError。如果你想要响应它而不是让它停止执行,你可以挽救错误。但是,在尝试首先解析日期之前,最好先进行健全性检查。

答案 1 :(得分:1)

rails中没有很好的日期验证。您可能想尝试Jonathan Viney的“validates_date_time”。

在这里找到: http://svn.viney.net.nz/things/rails/plugins/validates_date_time/