- A
- B
- D
- E
- F
- L
- M
- N
- O
- P
- S
- T
- W
- Y
DAYS_INTO_WEEK | = | { monday: 0, tuesday: 1, wednesday: 2, thursday: 3, friday: 4, saturday: 5, sunday: 6 } |
WEEKEND_DAYS | = | [ 6, 0 ] |
Returns a Range representing the whole week of
the current date/time. Week starts on start_day, default is
Date.beginning_of_week
or
config.beginning_of_week
when set.
Returns a new date/time at the start of the month.
today = Date.today # => Thu, 18 Jun 2015
today.beginning_of_month # => Mon, 01 Jun 2015
DateTime
objects will have a time set to 0:00.
now = DateTime.current # => Thu, 18 Jun 2015 15:23:13 +0000
now.beginning_of_month # => Mon, 01 Jun 2015 00:00:00 +0000
Returns a new date/time at the start of the quarter.
today = Date.today # => Fri, 10 Jul 2015
today.beginning_of_quarter # => Wed, 01 Jul 2015
DateTime
objects will have a time set to 0:00.
now = DateTime.current # => Fri, 10 Jul 2015 18:41:29 +0000
now.beginning_of_quarter # => Wed, 01 Jul 2015 00:00:00 +0000
Returns a new date/time representing the start of this week on the given
day. Week is assumed to start on start_day
, default is
Date.beginning_of_week
or
config.beginning_of_week
when set. DateTime
objects have their time set to 0:00.
Returns a new date/time at the beginning of the year.
today = Date.today # => Fri, 10 Jul 2015
today.beginning_of_year # => Thu, 01 Jan 2015
DateTime
objects will have a time set to 0:00.
now = DateTime.current # => Fri, 10 Jul 2015 18:41:29 +0000
now.beginning_of_year # => Thu, 01 Jan 2015 00:00:00 +0000
Returns a new date/time the specified number of days ago.
Returns a new date/time the specified number of days in the future.
Returns the number of days to the start of the week on the given day. Week
is assumed to start on start_day
, default is
Date.beginning_of_week
or
config.beginning_of_week
when set.
# File activesupport/lib/active_support/core_ext/date_and_time/calculations.rb, line 245 def days_to_week_start(start_day = Date.beginning_of_week) start_day_number = DAYS_INTO_WEEK[start_day] current_day_number = wday != 0 ? wday - 1 : 6 (current_day_number - start_day_number) % 7 end
Returns a new date/time representing the end of the month. DateTime objects will have a time set to 23:59:59.
Returns a new date/time at the end of the quarter.
today = Date.today # => Fri, 10 Jul 2015
today.end_of_quarter # => Wed, 30 Sep 2015
DateTime
objects will have a time set to 23:59:59.
now = DateTime.current # => Fri, 10 Jul 2015 18:41:29 +0000
now.end_of_quarter # => Wed, 30 Sep 2015 23:59:59 +0000
Returns a new date/time representing the end of this week on the given day.
Week is assumed to start on start_day
, default is
Date.beginning_of_week
or
config.beginning_of_week
when set. DateTime objects have their time set to
23:59:59.
Returns a new date/time representing the end of the year. DateTime objects will have a time set to 23:59:59.
Returns true if the date/time is in the future.
Returns Monday of this week assuming that week starts on Monday.
DateTime
objects have their time set to 0:00.
Returns a new date/time the specified number of months ago.
Returns a new date/time the specified number of months in the future.
Returns a new date/time representing the next day.
Short-hand for #months_since(1).
Short-hand for #months_since(3)
Returns a new date/time representing the given day in the next week.
today = Date.today # => Thu, 07 May 2015
today.next_week # => Mon, 11 May 2015
The given_day_in_next_week
defaults to the beginning of the
week which is determined by Date.beginning_of_week
or
config.beginning_of_week
when set.
today = Date.today # => Thu, 07 May 2015
today.next_week(:friday) # => Fri, 15 May 2015
DateTime
objects have their time set to 0:00 unless
same_time
is true.
now = DateTime.current # => Thu, 07 May 2015 13:31:16 +0000
now.next_week # => Mon, 11 May 2015 00:00:00 +0000
# File activesupport/lib/active_support/core_ext/date_and_time/calculations.rb, line 175 def next_week(given_day_in_next_week = Date.beginning_of_week, same_time: false) result = first_hour(weeks_since(1).beginning_of_week.days_since(days_span(given_day_in_next_week))) same_time ? copy_time_to(result) : result end
Returns a new date/time representing the next weekday.
Short-hand for #years_since(1).
Returns true if the date/time does not fall on a Saturday or Sunday.
Returns true if the date/time falls on a Saturday or Sunday.
Returns true if the date/time is in the past.
Returns a new date/time representing the previous day.
Returns a new date/time representing the given day in the previous week.
Week is assumed to start on start_day
, default is
Date.beginning_of_week
or
config.beginning_of_week
when set. DateTime objects have their time set to 0:00
unless same_time
is true.
# File activesupport/lib/active_support/core_ext/date_and_time/calculations.rb, line 208 def prev_week(start_day = Date.beginning_of_week, same_time: false) result = first_hour(weeks_ago(1).beginning_of_week.days_since(days_span(start_day))) same_time ? copy_time_to(result) : result end
Returns a new date/time representing the previous weekday.
Returns Sunday of this week assuming that week starts on Monday.
DateTime
objects have their time set to 23:59:59.
Returns true if the date/time is today.
Returns a new date/time representing tomorrow.
Returns a new date/time the specified number of weeks ago.
Returns a new date/time the specified number of weeks in the future.
Returns a new date/time the specified number of years ago.
Returns a new date/time the specified number of years in the future.