3
0

RoRでTimeとDateの使い分け

Posted at

Ruby on Railsでは、TimeとDateは異なる目的で使用される2つの異なるクラスです。以下にその主な違いをまとめます。

TimeとDateの違い

Time

Timeは、日付と時間の両方を扱います。これは、1970年1月1日からの経過秒数として時間を内部的に格納します。Timeオブジェクトはタイムゾーンを持つことができます。

Timeを使用
time = Time.now
puts time
# => 2023-09-15 12:34:56 +0900

Date

一方、Dateは日付のみを扱います。時間やタイムゾーンは考慮されません。

Dateを使用
date = Date.today
puts date
# => 2023-09-15

異なる点

  • Time

    • 時間やタイムゾーンを扱う必要がある場合、または特定の時間に何かをスケジュールするような場合に使用します。
      • (例:午前9時)
  • Date

    • 日付のみを扱う場合、または時間やタイムゾーンを気にする必要がない場合に使用します。
      • (例:誕生日や記念日)

また、Timeクラスは1970年1月1日からの経過秒数として時間を表現するため、1970年より前の日付を扱うことはできません。一方、Dateクラスは任意の年を扱うことができます。したがって、1970年より前の日付を扱う必要がある場合にはDateクラスを使用します。

3
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0