如何查询今天的日期时间

时间:2017-01-31 15:45:47

标签: ruby-on-rails

我有Appointment模型,其中有booktime field of datetime type(postgres).

Appointment.last有booktime: Tue, 31 Jan 2017 05:00:00 UTC +00:00。当我查询Appointment.where(booktime: Date.today) I get empty array []时。但 Date.today 会显示Tue, 31 Jan 2017

我想查看约会模型,如果它们是24小时范围的任何预订时间。任何帮助表示赞赏

3 个答案:

答案 0 :(得分:2)

或者,如果您不希望您的代码特定于pg,则可以传递日期范围:

Appointment.where(date: Date.today.beginning_of_day..Date.today.end_of_day)

答案 1 :(得分:1)

这应该适用于Postgres

Appointment.where("date_trunc('day', booktime) = ?", Date.today)

答案 2 :(得分:1)

为什么你不能使用Appointment.where("booktime < ? and booktime > ?", Date.today, Date.today - 1.day)