У меня есть проблема, связанная с поведением часового пояса приложения Rails 3.1.1. Вот что я сделал на своей консоли:
(rdb:1) Time.zone = "Amsterdam"
"Amsterdam"
(rdb:1) Time.zone.parse("Sun, 06 Nov 2011 13:05:18 +0000")
Sun, 06 Nov 2011 14:05:18 CET +01:00
(rdb:1) Time.zone = "Atlantic Time (Canada)"
"Atlantic Time (Canada)"
(rdb:1) Time.zone.parse("Sun, 06 Nov 2011 13:05:18 +0000")
Sun, 06 Nov 2011 09:05:18 AST -04:00
Метка времени моего объекта - UTC. В моем часовом поясе Амстердам это было 14:05, когда я его создал. В Нью-Йорке часовой пояс - «Атлантическое время (Канада)». Анализ временной метки в этой зоне приводит к 09:05. Но это неправильно, это должно быть 08: 05.
Кроме того, разница во времени между обеими зонами составляет -4 -1 = -5, но на самом деле составляет -6 часов.
Такое поведение полностью разрушает поведение моих приложений. Что я тут не так делаю?
С уважением
Felix.