如何比较rails 3.1中datetime字段的日期部分?

use*_*363 3 ruby-on-rails ruby-on-rails-3.1

我们的应用程序有一个lease_booking模型,其中包含一个lease_date字段,它是一个数据时间(我们使用sqlite进行开发,使用mysql进行生产).应用程序需要在给定日期找到所有lease_booking.代码如下:

LeaseBooking.where("lease_date == ?", '2012-1-5')
Run Code Online (Sandbox Code Playgroud)

问题是我们在2012/1/5找不到任何lease_booking,因为lease_date是日期+时间格式.应用程序如何仅比较rails 3.1中的数据时间字段的日期部分?

谢谢.

Mat*_*ahé 5

我担心你必须这样做:

LeaseBooking.where("date(lease_date) = ?", '2012-1-5')
Run Code Online (Sandbox Code Playgroud)

(只有一个=标志)

也许有一个更好的答案,因为调用"日期"功能对于ActiveRecord来说并不是很好!就像杰森刘易斯在评论中所说,它是特定于数据库的.