ActiveSupport::TimeZone
The TimeZone class serves as a wrapper around TZInfo::Timezone instances. It allows us to do the following:
-
Limit the set of zones provided by TZInfo to a meaningful subset of 134 zones.
-
Retrieve and display zones with a friendlier name (e.g., “Eastern Time (US & Canada)” instead of “America/New_York”).
-
Lazily load TZInfo::Timezone instances only when they’re needed.
-
Create ActiveSupport::TimeWithZone instances via TimeZone’s local, parse, at and now methods.
If you set config.time_zone in the Rails Application, you can access this TimeZone object via Time.zone:
# application.rb: class Application < Rails::Application config.time_zone = 'Eastern Time (US & Canada)' end Time.zone # => #<ActiveSupport::TimeZone:0x514834...> Time.zone.name # => "Eastern Time (US & Canada)" Time.zone.now # => Sun, 18 May 2008 14:30:44 EDT -04:00
Included modules
- Comparable
Constants
MAPPING = {\n"International Date Line West" => "Etc/GMT+12",\n"Midway Island" => "Pacific/Midway",\n"American Samoa" => "Pacific/Pago_Pago",\n"Hawaii" => "Pacific/Honolulu",\n"Alaska" => "America/Juneau",\n"Pacific Time (US & Canada)" => "America/Los_Angeles",\n"Tijuana" => "America/Tijuana",\n"Mountain Time (US & Canada)" => "America/Denver",\n"Arizona" => "America/Phoenix",\n"Chihuahua" => "America/Chihuahua",\n"Mazatlan" => "America/Mazatlan",\n"Central Time (US & Canada)" => "America/Chicago",\n"Saskatchewan" => "America/Regina",\n"Guadalajara" => "America/Mexico_City",\n"Mexico City" => "America/Mexico_City",\n"Monterrey" => "America/Monterrey",\n"Central America" => "America/Guatemala",\n"Eastern Time (US & Canada)" => "America/New_York",\n"Indiana (East)" => "America/Indiana/Indianapolis",\n"Bogota" => "America/Bogota",\n"Lima" => "America/Lima",\n"Quito" => "America/Lima",\n"Atlantic Time (Canada)" => "America/Halifax",\n"Caracas" => "America/Caracas",\n"La Paz" => "America/La_Paz",\n"Santiago" => "America/Santiago",\n"Newfoundland" => "America/St_Johns",\n"Brasilia" => "America/Sao_Paulo",\n"Buenos Aires" => "America/Argentina/Buenos_Aires",\n"Montevideo" => "America/Montevideo",\n"Georgetown" => "America/Guyana",\n"Puerto Rico" => "America/Puerto_Rico",\n"Greenland" => "America/Godthab",\n"Mid-Atlantic" => "Atlantic/South_Georgia",\n"Azores" => "Atlantic/Azores",\n"Cape Verde Is." => "Atlantic/Cape_Verde",\n"Dublin" => "Europe/Dublin",\n"Edinburgh" => "Europe/London",\n"Lisbon" => "Europe/Lisbon",\n"London" => "Europe/London",\n"Casablanca" => "Africa/Casablanca",\n"Monrovia" => "Africa/Monrovia",\n"UTC" => "Etc/UTC",\n"Belgrade" => "Europe/Belgrade",\n"Bratislava" => "Europe/Bratislava",\n"Budapest" => "Europe/Budapest",\n"Ljubljana" => "Europe/Ljubljana",\n"Prague" => "Europe/Prague",\n"Sarajevo" => "Europe/Sarajevo",\n"Skopje" => "Europe/Skopje",\n"Warsaw" => "Europe/Warsaw",\n"Zagreb" => "Europe/Zagreb",\n"Brussels" => "Europe/Brussels",\n"Copenhagen" => "Europe/Copenhagen",\n"Madrid" => "Europe/Madrid",\n"Paris" => "Europe/Paris",\n"Amsterdam" => "Europe/Amsterdam",\n"Berlin" => "Europe/Berlin",\n"Bern" => "Europe/Zurich",\n"Zurich" => "Europe/Zurich",\n"Rome" => "Europe/Rome",\n"Stockholm" => "Europe/Stockholm",\n"Vienna" => "Europe/Vienna",\n"West Central Africa" => "Africa/Algiers",\n"Bucharest" => "Europe/Bucharest",\n"Cairo" => "Africa/Cairo",\n"Helsinki" => "Europe/Helsinki",\n"Kyiv" => "Europe/Kiev",\n"Riga" => "Europe/Riga",\n"Sofia" => "Europe/Sofia",\n"Tallinn" => "Europe/Tallinn",\n"Vilnius" => "Europe/Vilnius",\n"Athens" => "Europe/Athens",\n"Istanbul" => "Europe/Istanbul",\n"Minsk" => "Europe/Minsk",\n"Jerusalem" => "Asia/Jerusalem",\n"Harare" => "Africa/Harare",\n"Pretoria" => "Africa/Johannesburg",\n"Kaliningrad" => "Europe/Kaliningrad",\n"Moscow" => "Europe/Moscow",\n"St. Petersburg" => "Europe/Moscow",\n"Volgograd" => "Europe/Volgograd",\n"Samara" => "Europe/Samara",\n"Kuwait" => "Asia/Kuwait",\n"Riyadh" => "Asia/Riyadh",\n"Nairobi" => "Africa/Nairobi",\n"Baghdad" => "Asia/Baghdad",\n"Tehran" => "Asia/Tehran",\n"Abu Dhabi" => "Asia/Muscat",\n"Muscat" => "Asia/Muscat",\n"Baku" => "Asia/Baku",\n"Tbilisi" => "Asia/Tbilisi",\n"Yerevan" => "Asia/Yerevan",\n"Kabul" => "Asia/Kabul",\n"Ekaterinburg" => "Asia/Yekaterinburg",\n
UTC_OFFSET_WITHOUT_COLON = UTC_OFFSET_WITH_COLON.tr(":", "")
UTC_OFFSET_WITH_COLON = "%s%02d:%02d"
Attributes
| [R] | name |
| [R] | tzinfo |
Files
- activesupport/lib/active_support/values/time_zone.rb