RoR中的适当语法,用于日期时间比较中的时间

时间:2010-08-11 18:57:53

标签: ruby-on-rails syntax irb

我试图将时间参数与.to_date归结为生成正确的比较

Organization.find(1140).events.all(:conditions => ["time < ?", Time.now.beginning_of_day]).blank?

我该怎么做?我试过这个:

Organization.find(1140).events.all(:conditions => [time.to_date < ?, Time.now.beginning_of_day]).blank?

这是一个很大的失败:D

1 个答案:

答案 0 :(得分:1)

您可以这样做:

Organization.find(1140).events.all(:conditions => ["DATE(time) < ?", Date.today]).blank?

DATE()是一个mysql函数,用于将给定值解析为Date格式。如果你想比较日期,你应该使用Date.today代替Time.now.beginning_of_day,它会更短,更具可读性。