У меня есть таблица предложений, и мне нужно найти записи, в которых дата соответствует сегодняшней дате.
В консоли rails поле даты, которое мне нужно сопоставить, выглядит следующим образом.Я назначил запись для тестирования.
ruby-1.9.2-p0 > deal.start
=> Tue, 10 May 2011 00:00:00 UTC +00:00
Если я попытаюсь найти какие-либо записи, соответствующие дате начала с сегодняшним днем, например, я получу ноль
ruby-1.9.2-p0 > Deal.find_by_start(Date.today)
=> nil
, тогда я подумалЯ мог бы сопоставить, преобразовав Date.today в datetime.
ruby-1.9.2-p0 > Date.today.to_datetime
=> Tue, 10 May 2011 00:00:00 +0000
ruby-1.9.2-p0 > Deal.find_by_start(Date.today.to_datetime)
=> nil
Как мне заставить это работать?Я использую Rails 3.
Редактировать: я думал о преобразовании их обоих в согласованный формат, который будет работать, но не при попытке использовать метод find_by_start
ruby-1.9.2-p0 > deal.start.strftime("%a, %e %B %Y") == Date.today.strftime("%a, %e %B %Y")
=> true
ruby-1.9.2-p0 > Deal.find_by_start.strftime("%a, %e %B %Y") == Date.today.strftime("%a, %e %B %Y")
NoMethodError: undefined method `strftime' for nil:NilClass