私は自分のapplication.rbに持っています:
config.active_record.default_timezone = :local
これにより、何かがデータベースに保存されるたびに、それを投稿したユーザーのタイムゾーンにタイムスタンプが付けられます。
ここで推測します..しかし、ユーザーがESTにいる場合、タイムスタンプはESTに関連しています。それらが PST にある場合、スタンプは PST に相対的です。
したがって、時間を引き出す場合、データベースはそれを最初に保存した時間に変換します。もちろん、これはすべて Rails の内部で行われており、この変換の実際の記録はありません。
たとえば、午後 4 時の日付を保存するとします。データベースを確認すると、UTC になっています。次に、その日付をビューに表示すると、具体的に言わなくても、ローカルのタイムゾーンに戻ります。
ここで質問です!
バージニア州にあるサーバーで、アイルランドに住むユーザーによって最初に作成されたオブジェクトのクローンを、Resque ワーカーによって夜通し作成したいとします。
何が起こるかというと、オブジェクトはユーザーではなくサーバーのローカル時間に更新されます。
質問:オブジェクトが保存された元の現地時間を抽出するにはどうすればよいですか?