表題で全てを表現してしまっているシリーズ。 to_s(:db)
とすると UTC に変換される
環境
rails (5.2.0)
実演
Rails.application.config.time_zone => "Tokyo"
target_time = Time.zone.now # => Mon, 25 Jun 2018 15:31:29 JST +09:00 target_time.to_s # => "2018-06-25 15:31:29 +0900" target_time.to_s(:db) # => "2018-06-25 06:31:29"
ちゃんと書き換わってくれる。
便利ポイント
- (DBの設定がUTCであれば)DBに入る値と同義になるので楽
- 比較する時に小数点以下の情報がなくなるので秒数レベルのまでの一致確認で問題なければ楽