# Timeクラスで1を加算すると1秒が加算される t = Time.parse("2020-06-30 00:00:00") p t + 1 => 2020-06-30 00:00:01 +0900
# DateTimeクラスで1を加算すると1日が加算される d = DateTime.parse("2020-06-30 00:00:00") p d + 1 => #<DateTime: 2020-07-01T00:00:00+00:00 ((2459032j,0s,0n),+0s,2299161j)>
Timeを使いたいが加算をどう解決するか
1 2 3 4 5 6 7 8 9 10 11
# Railsであれば、ActiveSupport::Durationにday, week, month, year等の関数が存在 t = Time.parse("2020-06-30 00:00:00") p t + 1.day => 2020-07-01 00:00:00 +0900
# Rubyであれば、普通に計算? # うるう秒などを扱えるTimeクラスなのに自前で計算するとなると誤差が出そう t = Time.parse("2020-06-30 00:00:00") t = t + (60 * 60 * 24) p t => 2020-07-01 00:00:00 +0900