更改預設時區

config.active_record.default_timezone 確定從資料庫中提取日期和時間時是否使用 Time.local(如果設定為:local)或 Time.utc(如果設定為:utc)。預設值為:utc。 http://guides.rubyonrails.org/configuring.html

如果要更改 Rails 時區,但繼續在 UTC 中儲存資料庫中的 Active Record ,請使用 ****

# application.rb
config.time_zone = 'Eastern Time (US & Canada)'

如果你想改變 Rails 的時區活動記錄儲存時間在該時區,使用

# application.rb
config.time_zone = 'Eastern Time (US & Canada)'
config.active_record.default_timezone = :local

警告 :在以非 UTC 格式在資料庫中儲存時間之前,你真的應該三思而後,甚至三次。

注意
修改 application.rb 後,不要忘記重新啟動 Rails 伺服器。

請記住,config.active_record.default_timezone 只能採用兩個值

  • :local (轉換為 config.time_zone 中定義的時區)
  • :utc (轉換為 UTC)

以下是你可以找到所有可用時區的方法

rake time:zones:all