в rails устанавливается в environment.rb через инициализатор rails
Rails::Initializer.run do |config|
config.time_zone = 'Pacific Time (US & Canada)'
# ...
Я только что провел тест, и когда закомментировано config.time_zone Time.zone также вернет nil в проекте rails;так что я думаю, что «по умолчанию» нет, оно просто устанавливается в инициализаторах
Угадаете ли вы, что вы уже знаете, что это будет «работать»?.2 вещи могут отличаться от новых версий?
примечание редактора : В rails> = 3.0 все патчи обезьяны были перемещены в пространство имен core_ext
, поэтому указанное выше требование не распространяетсяTime
.Для более поздних версий ActiveSupport
используйте следующее:
require 'active_support/core_ext/time/zones'