Ruby String to Time转换

时间:2015-05-27 11:11:53

标签: ruby-on-rails ruby

在红宝石轨道上,如何将string(例如“06:00 AM”)转换为Time(“06:00 AM”)。

我想在给定时间之后得到时间3hrs。问题是,我用来保存time的字段位于string。根据我的理解,我们无法评估string或我们可以吗?我只想在给定时间之后花费3hrs时间,但是如果不将string字段转换为Time字段,则似乎不可能。

我可以用(06:00 AM) Time格式获得时间strftime("%I:%M %p"),但这不是我的情景。我只想将string转换为time格式。

请有人帮忙解决这个问题。

2 个答案:

答案 0 :(得分:4)

您可以拨打to_time方法。

"06:00 AM".to_time
# => 2015-05-27 06:00:00 +0530

答案 1 :(得分:1)

to_time与旧版本的Rails一起使用可能会给出:

  

ArgumentError:无效日期

在这种情况下,您可以使用:

Time.parse("06:00 AM")
# => 2015-05-27 06:00:00 +0530