Ruby는 Ruby 표준 라이브러리의 일부인 Date 및 DateTime 클래스 에서 날짜 산술을 지원합니다 . 두 클래스 모두 날짜 또는 시간에서 일을 더하거나 빼는 # + 및 #- 메서드를 노출 합니다.
$ irb
> require 'date'
=> true
> (DateTime.new(2015,4,1) - 90).to_s
=> "2015-01-01T00:00:00+00:00"
> (DateTime.new(2015,4,1) - 1).to_s
=> "2015-03-31T00:00:00+00:00"
사용 # << 와 # >> 개월 대신 일에서 작동하는 방법. 월별 산술은 일별 산술과 약간 다릅니다. DateTime 대신 Date를 사용하면 효과가 더 분명해집니다.
> (Date.new(2015, 5, 31) << 3).to_s
=> "2015-02-28"
joda-time 예제에 따라 Ruby로 다음과 같이 작성할 수 있습니다.
now = DateTime.now
ninety_days_ago = now - 90
아니면 그냥
ninety_days_ago = DateTime.now - 90