我有一个包含DateTime属性date的数据模型。我想知道这个日期是否是今天。我有一段时间了!
>> Deal.first.date
=> Mon, 14 Dec 2009 23:59:59 EST -05:00
我已经尝试了很多技巧,我会很尴尬地将它们放在这里。所以我想问一下,我需要在ActiveRecord find方法中匹配这个日期?
谢谢, 亚伦。
答案 0 :(得分:5)
我猜测时区正在推动你的屁股。
对于特定情况,您可以执行以下操作:
model.date.today?
要查找有效的记录,请尝试以下操作:
Deal.all(:conditions=>['date > ?',Time.zone.now.beginning_of_day])
问题在于:
>> Time.zone.now.beginning_of_day == Date.today.beginning_of_day
=> false
答案 1 :(得分:0)
我会选择这样的事情:
Deal.find(:first, :conditions => ['date >= ? AND date < ?', Date.today, Date.today+1])
答案 2 :(得分:-1)
我认为这应该有用,但不确定是否可以,因为我没有测试过。
Deal.first(:condition => { :date => Date.today })