同様の質問をたくさん見ますが、それらはすべてデータベース部分ではなくビュー部分に焦点を当てる傾向があります。顧客が、EST などの特定のローカル タイムゾーンで created_at フィールドを保存する必要があるとします。
デフォルトでは、レールはこれをデータベースに保存します
2013 年 10 月 13 日 (日) 20:35:47 +0000
代わりにこれを保存するように動作を変更する必要があります。
2013 年 10 月 13 日 (日) 16:35:47 +0000
同様の質問をたくさん見ますが、それらはすべてデータベース部分ではなくビュー部分に焦点を当てる傾向があります。顧客が、EST などの特定のローカル タイムゾーンで created_at フィールドを保存する必要があるとします。
デフォルトでは、レールはこれをデータベースに保存します
2013 年 10 月 13 日 (日) 20:35:47 +0000
代わりにこれを保存するように動作を変更する必要があります。
2013 年 10 月 13 日 (日) 16:35:47 +0000
で ActiveRecord が考慮するタイムゾーンを設定できますconfig/application.rb
。たとえば、次を追加できます。
config.time_zone = 'Eastern Time (US & Canada)'
config.active_record.default_timezone = 'Eastern Time (US & Canada)'
公式ガイドから:
config.active_record.default_timezone
データベースから日付と時刻を取得するときに、Time.local (:local に設定されている場合) または Time.utc (:utc に設定されている場合) のどちらを使用するかを決定します。Rails のデフォルトは :utc ですが、Rails の外部で使用する場合、Active Record のデフォルトは :local です。
config.time_zone
アプリケーションのデフォルトのタイムゾーンを設定し、Active Record のタイムゾーン認識を有効にします。