Ruby on RailsStandardzeitzone ändern


Bemerkungen

config.active_record.default_timezone legt fest, ob Time.local (wenn auf local gesetzt) ​​oder Time.utc (wenn auf utc gesetzt) ​​verwendet wird, um Datumsangaben und Zeiten aus der Datenbank zu ziehen. Der Standardwert ist: utc. http://guides.rubyonrails.org/configuring.html


Wenn Sie die Zeitzone von Rails ändern möchten und Active Record weiterhin in der Datenbank in UTC speichern möchten, verwenden Sie

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

Wenn Sie die Zeitzone von Rails ändern möchten und Active Record- Speicherzeiten in dieser Zeitzone haben möchten, verwenden Sie

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

Achtung : Sie sollten wirklich zweimal darüber nachdenken, bevor Sie Zeiten in der Datenbank in einem Nicht-UTC-Format speichern.

Hinweis
Vergessen Sie nicht, Ihren Rails-Server nach dem Ändern von application.rb neu zu starten.


Denken config.active_record.default_timezone daran, dass config.active_record.default_timezone nur zwei Werte config.active_record.default_timezone kann

  • : local (konvertiert in die in config.time_zone definierte config.time_zone )
  • : utc (konvertiert nach UTC)

So finden Sie alle verfügbaren Zeitzonen

rake time:zones:all

Standardzeitzone ändern Verwandte Beispiele