Об этом часто спрашивают, но я все еще сталкиваюсь с некоторыми проблемами с ним.
У меня есть дата, которую я получаю, и она сохраняется как Дата.Мне нужно запросить «Больше чем» и «Меньше чем», поэтому я изменил его на «Время», попробовал еще раз, но получаю странные результаты.
Я делаю это
Class.where(:event_date.gt => Time.parse(Date.today))
и я получаю старые записи 1940-х, 1960-х и других.Я попытался преобразовать время, добавив .utc в конце, сравнивая только с Date.today, но пока ничего не решило проблему.Это селектор, сгенерированный Mongoid
selector: {:date_utc=>{"$gte"=>Sat Sep 10 21:00:00 UTC 2011}},
Я получаю дату в этом формате «2011-09-11» и сохраняю ее в поле «Время».Пытался разобрать это как Time utc, не повезло.
Есть идеи?Я использую Mongoid 2.0.2.Более поздние версии кажутся несовместимыми с другими расширениями, которые я использую.
[ОБНОВЛЕНИЕ]
Так что проблема со старыми датами до 1970 года, очевидно.Как с ними бороться - вопрос сейчас.