String.to_datetime不使用当前时区(当没有给出时)
我注意到,当字符串中没有给出时区时,Rails的String.to_timezone方法不使用当前时区。
$ "2013-01-14 14:38".to_datetime => Mon, 14 Jan 2013 14:38:00 +0000 $ DateTime.now => Mon, 14 Jan 2013 14:39:50 +0100
有没有办法告诉方法使用当前时区?
谢谢。
试试这个:
Time.zone.parse('2013-01-14 14:38').to_datetime
这将使用当前时区来解析字符串到目前为止。
您可以使用DateTime
对象上的#in_time_zone方法:
"2013-01-14 14:38".to_datetime.in_time_zone "2013-01-14 14:38".to_datetime.in_time_zone("Prague")
使用in_time_zone
:
"2013-01-14 16:06".in_time_zone => Mon, 14 Jan 2013 16:06:00 CET +01:00