从DateTime实例中提取时区标识符

时间:2015-03-26 14:00:21

标签: ruby-on-rails

我正在寻找一种从DateTime实例中提取友好区域标识符(如CET,GMT或UTC)的方法。

我失败的一些尝试:

>> DateTime.current.zone
=> "+00:00" # Not what I want

>> Time.current.zone
=> "UTC"
>> DateTime.current.to_time.zone
=> "CET" # Uses system time instead of the one set in Rails config

我还设法发现如果你将DateTime实例转换为特定区域,DateTime#zone将返回我正在寻找的缩写,但这对于uncast实例不起作用:

>> DateTime.current.in_time_zone('America/Los_Angeles').zone
=> "PDT"
>> DateTime.current.zone
=> "+00:00

1 个答案:

答案 0 :(得分:-2)

您应该使用strftime%Z模式。它会将时区格式化为缩写名称。