我试图在两个日期之间每隔 N 天步进一次。我尝试了以下代码,但没有用,因为 startDate 和 endDate 是 ActiveSupport::TimeWithZone 对象,而不是我想的 DateTime 对象。
startDate.step(endDate, step=7) { |d| puts d.to_s}
min.step(max, step=stepInt){ |d|
puts d.to_s
}
如何将 TimeWithZone 对象转换为 DateTime?
最佳答案
我认为更新这个答案可能会有用,因为我最近在搜索这个。实现此转换的最简单方法是使用 .to_datetime() 函数。
例如
5.hours.from_now.class # => ActiveSupport::TimeWithZone
5.hours.from_now.to_datetime.class # => DateTime
引用:http://api.rubyonrails.org/classes/ActiveSupport/TimeWithZone.html#method-i-to_datetime
关于ruby-on-rails - 将 ActiveSupport::TimeWithZone 转换为 DateTime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4494954/