Ruby on Rails
デフォルトのタイムゾーンを変更する
サーチ…
備考
config.active_record.default_timezoneは、データベースから日付と時刻を取得するときに、Time.local(localに設定されている場合)またはTime.utc(utcに設定されている場合)を使用するかどうかを決定します。デフォルトはutcです。 http://guides.rubyonrails.org/configuring.html
Railsのタイムゾーンを変更したいが、 Active RecordをデータベースにUTCで保存し続けたい場合は、
# 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以外の形式で時間を保存する前に、実際には2倍、さらには3倍と考えるべきです。
注意
application.rb
を変更した後、Railsサーバーを再起動することを忘れないでください。
config.active_record.default_timezone
は2つの値しかconfig.active_record.default_timezone
できないことにconfig.active_record.default_timezone
ください
- :local (
config.time_zone
定義されたタイムゾーンに変換) - :utc (UTCに変換)
使用可能なすべてのタイムゾーンを見つける方法は次のとおりです
rake time:zones:all
Railsのタイムゾーンを変更しますが、Active RecordをUTCでデータベースに保存し続けます
# application.rb
config.time_zone = 'Eastern Time (US & Canada)'
Railsのタイムゾーンを変更し、このタイムゾーンにActive Recordの保存時間を設定する
# application.rb
config.time_zone = 'Eastern Time (US & Canada)'
config.active_record.default_timezone = :local
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow