hene

hene.dev

Rails で現在の日時が指定した期間内か判別

Rails で現在の日時が指定した期間内か判別

beginning_of_day

指定した日時の 00:00:00 になります。

[1] pry(main)> Time.current.beginning_of_day
=> Fri, 21 Jun 2019 00:00:00 JST +09:00

参考: beginning_of_day - リファレンス - - Rails ドキュメント

between?

between? を使うと、指定した日時が指定した期間内にあるのか判別できます。

[1] pry(main)> Time.current
=> Fri, 21 Jun 2019 00:49:56 JST +09:00
[2] pry(main)> today = Time.current.beginning_of_day
=> Fri, 21 Jun 2019 00:00:00 JST +09:00
[3] pry(main)> Time.current.between?(today + 9.hour, today + 21.hour)
=> false
[4] pry(main)> Time.current.between?(today, today + 1.hour)
=> true

参考: between? (Comparable) - Ruby リファレンス

参考

関連記事