获得2个日期之间的差异

Vij*_*ali 4 ruby

我想获得两个日期之间的天数,小时数和分钟数.我该怎么做呢?

Rea*_*lly 6

我还没有找到Ruby-ish seconds_to_hours函数(尽管构建起来很简单),但是在这篇文章的底部有一个明显的解决方案.

s = Time.now
e = Time.now + 3.hours
d = e - s
 => 10803.318176 
Run Code Online (Sandbox Code Playgroud)

注意:此值只是一个浮点数,表示两个日期值之间的秒数.

我希望能够返回时间.为此,您将以秒为单位除以时间.

b = d / 1.hour.seconds
 => 3.0009217155555556
Run Code Online (Sandbox Code Playgroud)

我的目标是获得小时的小数值,四舍五入到最近的6分钟,所以:

r = b.round(1)
 => 3.0
Run Code Online (Sandbox Code Playgroud)

总而言之:

r = ((e - s) / 1.hour.seconds).round(1)
 => 3.0
Run Code Online (Sandbox Code Playgroud)