我想使用Time.now.strftime("%d/%m/%Y %H:%M")
来显示我的时区中的当前时间,但似乎会延迟两个小时。它显示:28/08/2017 06:36
时为08:36
。如何调整时区以显示正确的时间?
答案 0 :(得分:5)
纯Ruby方式:
> Time.now.utc.localtime("+05:30").strftime("%d/%m/%Y %H:%M")
#=> "28/08/2017 12:41"
其中+05:30
(IST)是特定区域的偏移量
注意: Time.now.getlocal.zone
将返回您的本地区域
使用 ActiveSupport :
> require 'active_support/time'
#=> true
> Time.now.in_time_zone('US/Eastern').strftime("%d/%m/%Y %H:%M")
#=> "28/08/2017 03:17"