我的Rails應用程序中系統時間從CEST(+02:00)改爲CET(+01:00)後,我目前正在看到一個問題。Rails uniform歐洲格式的日期時間CEST/CET
我得到的問題是,由於某種原因,某些DateTime被保存爲CET,而其他人則以CEST創建記錄。問題是,當從數據庫中檢索數據並使用strftime(「%H:%M」)時,它會打印出錯誤的值,例如,如果它保存爲CEST,則會打印出「10:00」,而如果保存爲CET,則打印「09:00」。
如何強制系統始終使用+0200或+0100?
通過運行Time.zone
運行時得到「(GMT + 01:00)ROME」Time.zone.now
我得到時間戳+0200。
我該如何解決這個不一致問題?我的config.time_zone
設置爲「羅馬」。
P.S.我正在使用Rails 3.2.13
將所有內容存儲爲UTC,然後轉換爲displaytime所需的任何時區。 –
其實,如果我嘗試更新我的DateTime字段,它會保持相同的時區,如果我通過調用'DateTime.utc'強制它: -/ – user1978591
我的意思是通過在CEST日期執行'date.utc.in_local_time',它回到CEST,同時在CET日期做同樣的事情返回CET表示。運行'utc'不應該讓時區丟失? – user1978591