> e = Event.first
> e.registration_start_utc #registration_start_utc is a datetime column
=> Sat, 23 Oct 2010 06:38:00 UTC +00:00
> e.registration_start_utc.utc?
=> true
> ActiveSupport::TimeZone.find_tzinfo("America/New_York").utc_to_local(e.registration_start_utc)
=> Sat, 23 Oct 2010 02:38:00 UTC +00:00
2 вопроса по этому поводу:Rails, utc_to_local и летнее время
1) Почему это последний выход, показывающий "UTC" - час был преобразован (6 => 2), но она по-прежнему говорит UTC , Почему бы не EST/EDT?
2) Что происходит после перехода на летнее время и смещения для Нью-Йорка от -4 до -5? Значение в БД не меняется, поэтому мой единственный вывод заключается в том, что мое приложение начнет показывать «1:38» везде вместо правильного 2:38?
В основном я занимаюсь # 2 здесь. # 1 - скорее любопытство.
Спасибо!
См [здесь] (http://rubyforge.org/pipermail/tzinfo -users/2007-September/000015.html) для рассуждений Фила – Zabba