我有一个简单的任务,我想取一个开始日期和一个结束日期,然后遍历天/日期。我的db:seed rake任务中使用了此代码。目前,我的代码经过了以下尝试。

(someModel.start_date.to_datetime..someModel.end_date.to_datetime).each {
    |x| puts x
}
 ......
(someModel.start_date...someModel.end_date).each { |x| puts x }

在每种情况下,我都会收到这样的错误。
can't iterate from ActiveSupport::TimeWithZone
or
can't iterate from DateTime

如果有人对如何遍历一系列DateTime有任何线索,我将不胜感激。

最佳答案

start = someModel.start_date.to_datetime
finish = someModel.end_date.to_datetime
while(start < finish) do
  #bunch of awesome stuff
  start += 1.day
end

10-04 15:20