mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
AS guide: more date calculation utilities
This commit is contained in:
parent
08d991ad40
commit
1ff3d951e6
1 changed files with 59 additions and 1 deletions
|
@ -2680,7 +2680,7 @@ d.next_year # => Wed, 28 Feb 2001
|
|||
|
||||
h6. +last_month+, +next_month+
|
||||
|
||||
The methods +last_month+ and +next_month+ return the a date with the same day in the last or next month:
|
||||
The methods +last_month+ and +next_month+ return the date with the same day in the last or next month:
|
||||
|
||||
<ruby>
|
||||
d = Date.new(2010, 5, 8) # => Sat, 08 May 2010
|
||||
|
@ -2697,6 +2697,64 @@ Date.new(2000, 5, 31).next_month # => Fri, 30 Jun 2000
|
|||
Date.new(2000, 1, 31).next_month # => Tue, 29 Feb 2000
|
||||
</ruby>
|
||||
|
||||
h6. +beginning_of_week+, +end_of_week+
|
||||
|
||||
The methods +beginning_of_week+ and +end_of_week+ return the dates for the beginning and end of week, assuming weeks start on Monday:
|
||||
|
||||
<ruby>
|
||||
d = Date.new(2010, 5, 8) # => Sat, 08 May 2010
|
||||
d.beginning_of_week # => Mon, 03 May 2010
|
||||
d.end_of_week # => Sun, 09 May 2010
|
||||
</ruby>
|
||||
|
||||
+beginning_of_week+ is aliased to +monday+ and +at_beginning_of_week+. +end_of_week+ is aliased to +sunday+ and +at_end_of_week+.
|
||||
|
||||
h6. +next_week+
|
||||
|
||||
+next_week+ receives a symbol with a day name in English (in lowercase, default is +:monday+) and it returns the date corresponding to that day in the next week:
|
||||
|
||||
<ruby>
|
||||
d = Date.new(2010, 5, 9) # => Sun, 09 May 2010
|
||||
d.next_week # => Mon, 10 May 2010
|
||||
d.next_week(:saturday) # => Sat, 15 May 2010
|
||||
</ruby>
|
||||
|
||||
h6. +beginning_of_month+, +end_of_month+
|
||||
|
||||
The methods +beginning_of_month+ and +end_of_month+ return the dates for the beginning and end of the month:
|
||||
|
||||
<ruby>
|
||||
d = Date.new(2010, 5, 9) # => Sun, 09 May 2010
|
||||
d.beginning_of_month # => Sat, 01 May 2010
|
||||
d.end_of_month # => Mon, 31 May 2010
|
||||
</ruby>
|
||||
|
||||
+beginning_of_month+ is aliased to +at_beginning_of_month+, and +end_of_month+ is aliased to +at_end_of_month+.
|
||||
|
||||
h6. +beginning_of_quarter+, +end_of_quarter+
|
||||
|
||||
The methods +beginning_of_quarter+ and +end_of_quarter+ return the dates for the beginning and end of the quarter of the receiver's calendar year:
|
||||
|
||||
<ruby>
|
||||
d = Date.new(2010, 5, 9) # => Sun, 09 May 2010
|
||||
d.beginning_of_quarter # => Thu, 01 Apr 2010
|
||||
d.end_of_quarter # => Wed, 30 Jun 2010
|
||||
</ruby>
|
||||
|
||||
+beginning_of_quarter+ is aliased to +at_beginning_of_quarter+, and +end_of_quarter+ is aliased to +at_end_of_quarter+.
|
||||
|
||||
h6. +beginning_of_year+, +end_of_year+
|
||||
|
||||
The methods +beginning_of_year+ and +end_of_year+ return the dates for the beginning and end of the year:
|
||||
|
||||
<ruby>
|
||||
d = Date.new(2010, 5, 9) # => Sun, 09 May 2010
|
||||
d.beginning_of_year # => Fri, 01 Jan 2010
|
||||
d.end_of_year # => Fri, 31 Dec 2010
|
||||
</ruby>
|
||||
|
||||
+beginning_of_year+ is aliased to +at_beginning_of_year+, and +end_of_year+ is aliased to +at_end_of_year+.
|
||||
|
||||
h4. Conversions
|
||||
|
||||
h3. Extensions to +DateTime+
|
||||
|
|
Loading…
Reference in a new issue