2017-08-28 157 views
0

我想使用Time.now.strftime("%d/%m/%Y %H:%M")來顯示我的時區中的當前時間,但它似乎被延遲了兩個小時。它顯示:28/08/2017 06:36,當它是08:36。我如何調整時區以顯示正確的時間?'Time.now'沒有顯示正確的時間

+1

'Time.now.getlocal.zone'這是否會返回您的區域? –

回答

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"