我似乎找不到使用Mongoid/Rails进行日期范围查询的任何内容.以下是我尝试的一些查询(大约100个其他查询).如果它返回任何内容,它总是忽略'end_date'.两个日期都是日期时间......
all(:conditions => {:created_at => start_date.to_datetime..end_date.to_datetime})
结果是:
NoMethodError: undefined method `to_i' for Tue, 26 Apr 2011 00:00:00 +0000..Fri, 06 May 2011 00:00:00 +0000:Range
另一个例子...
where(:created_at => {'$gte' => start_date,'$lt' => end_date})
导致查询成功,但忽略结束日期.结果在开始日期之后正确返回,但不受结束日期的限制.
几天来我一直在研究这个问题但无济于事.在论坛或IRC网上帮助不大.
很想知道我做错了什么:)
Mongoid中有一个错误.现在修复了.
欲获得更多信息:
https://github.com/mongoid/mongoid/issues/761
https://github.com/mongoid/mongoid/commit/f326de5acc969e1342e640dc026de7e94bf4cf49#lib/mongoid/matchers.rb