offset付き時刻型 サーバー 時間 同じ基準✨ 09:00+09:00 (ISO 8601) 00:00Z (ISO 8601) 20:00-04:00 (ISO 8601) Timeオブジェクト (offset 付き) Timeオブジェクト (offset 付き) Timeオブジェクト (offset 付き) Timeオブジェクト (offset 付き) API は ISO 8601 形式のみ 出入口で 必ず正規化 UTC +9 UTC +0 UTC -4
e.g. APIリクエスト、標準入力、ファイル読み込み... • 外界への出力の直前に ISO 8601 表記文字列に正規化する ◦ e.g. API レスポンス、標準出力、ファイル書き出し • DB から取り出した日時は ActiveSupport::TimeWithZone オブ ジェクトになっている。Ruby 標準の Time オブジェクト互換 • 日時表現の文字列が出入口以外で存在しないこと! jst = Time.zone.parse('2024-01-01T09:00:00+09:00') utc = Time.zone.parse('2024-01-01T00:00:00+00:00') // true. jst == utc