1

同様の質問をたくさん見ますが、それらはすべてデータベース部分ではなくビュー部分に焦点を当てる傾向があります。顧客が、EST などの特定のローカル タイムゾーンで created_at フィールドを保存する必要があるとします。

デフォルトでは、レールはこれをデータベースに保存します

2013 年 10 月 13 日 (日) 20:35:47 +0000

代わりにこれを保存するように動作を変更する必要があります。

2013 年 10 月 13 日 (日) 16:35:47 +0000

4

1 に答える 1

3

で 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 のタイムゾーン認識を有効にします。

于 2013-10-13T21:06:33.690 に答える