日期比较失败

时间:2014-04-02 14:41:33

标签: ruby ruby-on-rails-3

我尝试与日期进行比较。我在开发模式下成功运行,但生产行为不同。

object_date.to_date <= Date.today

两个日期的提示:2014-04-02T00:00:00 + 0000 vs 2014-01-15T00:00:00 + 0000

代码引发failed with ArgumentError: comparison of Date with Time failed

此代码在delayedjob中执行。

我不明白比较失败的原因。

1 个答案:

答案 0 :(得分:1)

to_date将返回self,因此我认为由于某种原因,object_time是Time-object而不是Date-object。如果不能接受更改object_time的类型,则必须首先使用Date中的解析方法解析时间。

尝试Date.parse(object_date.to_date.to_s) <= Date.today将完成这项工作。