我一直在尝试使用Date对象上的step()方法从当前日期检索前两个日期,如下所示:
date_d.step(2, step=-2){|d|
puts d
}
其中2是限制,步骤是向后或向前的步数。
我已根据此处提供的文档完成此操作:Date.step()
此代码段进入无限循环,然后输出日期不间断(向后)
这种方法似乎没有足够的文档,我也没有在线查找解决方案。
请帮我解决这个问题。
答案 0 :(得分:6)
limit参数是循环停止的日期,而不是天数或迭代次数。 所以例如
date_d = Date.parse( '2010-08-01' )
date_d.step(date_d - 4 , step=-2){|d|
puts d
}
将输出
2010-08-01
2010-07-30
2010-07-28