Rails 時間の扱いについて
対象の読者
時間を扱うときに、毎回時間に時間に関して調べてしまう人向け
要点
下記の2点だけ理解しておけば今後は迷わなくなる
- 時間に関するデータ型は2つ、datetime(年日時間) date型(年日)
月日はDateクラスだけ 年月日時は DateTime Timeだけ
年のありなしは利用用途に応じて選択すれば良い
これは、世界の標準の時間(協定世界時)があって、日本はどれくらいの時間差があるのか、 を知って置く必要がみたい 日本は+9時間。
rubyの場合
## JSTはJapan Standard Timeの略らしい [11] pry(main)> Time.zone.now => Sun, 19 Dec 2021 22:28:04 JST +09:00 ## zoneをつけない [12] pry(main)> Time.now => 2021-12-19 22:29:43 +0900
zoneをつけると下記の time_zoneのをUTC(協定世界時)に変える
config.time_zone = 'UTC' config.active_record.default_timezone = :local ## + 9時間されていない [1] pry(main)> Time.zone.now => Sun, 19 Dec 2021 13:33:21 UTC +00:00 ## 日本時間 22:34