Method: Date#to_time

Defined in:
activesupport/lib/active_support/core_ext/date/conversions.rb

#to_time(form = :local) ⇒ Object

Converts a Date instance to a Time, where the time is set to the beginning of the day. The timezone can be either :local or :utc (default :local).

date = Date.new(2007, 11, 10)  # => Sat, 10 Nov 2007

date.to_time                   # => 2007-11-10 00:00:00 0800
date.to_time(:local)           # => 2007-11-10 00:00:00 0800

date.to_time(:utc)             # => 2007-11-10 00:00:00 UTC

NOTE: The :local timezone is Ruby’s process timezone, i.e. ENV['TZ']. If the application’s timezone is needed, then use in_time_zone instead.

Raises:

  • (ArgumentError)


83
84
85
86
# File 'activesupport/lib/active_support/core_ext/date/conversions.rb', line 83

def to_time(form = :local)
  raise ArgumentError, "Expected :local or :utc, got #{form.inspect}." unless [:local, :utc].include?(form)
  ::Time.public_send(form, year, month, day)
end