【发布时间】:2012-05-12 13:06:30
【问题描述】:
我有一个日期范围(从、到),我想循环不同的时间间隔(每天、每周、每月……)
我怎样才能遍历这个日期范围?
更新
感谢您的回答,我想出了以下内容:
interval = 'week' # month, year
start = from
while start < to
stop = start.send("end_of_#{interval}")
if stop > to
stop = to
end
logger.debug "Interval from #{start.inspect} to #{stop.inspect}"
start = stop.send("beginning_of_#{interval}")
start += 1.send(interval)
end
这将遍历一个日期范围,间隔为周、月或年,并尊重给定间隔的开始和结束。
由于我没有在我的问题中提到这一点,我选择了将我推向正确方向的答案。
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-3 activerecord intervals