4

如何转换24.hours成分钟它给了我第二。

1.9.3p392 :076 > 24.hours
=> 86400 seconds 

一种非红宝石方式是

1.9.3p392 :079 > 24*60
 => 1440 

有没有 ruby​​ 或 rails 方法可以做到这一点?i.e. 24.hours_in_minutes

4

3 回答 3

8

最合适的方法可能是:

24.hours / 1.minute

这样,您就可以保持“红宝石思维方式”的可读性和明确的意图。

当然,这将有一个常数值,因此您可能应该将它存储在一个适当命名的常数(例如MINUTES_IN_A_DAY)中,而不是每次都计算它。

于 2013-05-16T12:07:42.233 回答
4

in_minutes (Rails 6.1+)

Rails 6.1 引入了新的ActiveSupport::Duration转换方法,例如in_secondsin_minutesin_hoursin_daysin_weeksin_monthsin_years

因此,现在,您的问题可以简单地解决:

24.hours.in_minutes
# => 1440.0

这是相应 PR 的链接

于 2020-10-19T01:13:39.753 回答
1

有一条捷径。这将在几秒钟内返回

24.hours.to_i或者1.day.to_i

wil return 86400

于 2018-04-06T15:16:22.630 回答