如何找到红宝石的两个时间之间的时差?

Pra*_*kla 3 ruby

time_difference_in_sec = (DateTime.now - @given_time).to_i.abs

where DateTime.now : #<DateTime: 2015-09-28T19:30:35+05:30 ((2457294j,50435s,957360402n),+19800s,2299161j)>
@given_time : #<DateTime: 2015-09-28T11:30:09+00:00 ((2457294j,41409s,0n),+0s,2299161j)>

time_difference_in_sec : 0
Run Code Online (Sandbox Code Playgroud)

我搜索了很多,但没有得到正确的答案。

Doo*_*oon 5

如果您希望以秒为单位,则可以将它们都转换为时间戳,然后减去

time_difference_in_sec = (DateTime.now.to_time.to_i - @given_time.to_time.to_i).abs
Run Code Online (Sandbox Code Playgroud)

否则,您最终会处理有理数,以及其他答案中所示的类似问题。