Как я могу заставить Rails 3 пересчитывать время в базе данных как уже в формате Pacific? - PullRequest
0 голосов
/ 09 июня 2011

Это довольно запутанно для меня. Мой сервер базы данных MySQL хранит время в «SYSTEM», то есть PDT, как и мой сервер приложений. Но я не могу понять, как заставить ActiveRecord интерпретировать время, приходящее из моей базы данных, как уже в формате PDT. Но если я установлю:

config.time_zone = "Pacific Time (US & Canada)"

затем значение времени базы данных:

2011-06-09 03:19:57

затем в консоли Rails я получаю:

Wed, 08 Jun 2011 20:19:57 PDT -07:00

Вычитается 7 часов! Это говорит мне о том, что он интерпретирует входящее время как UTC вместо Pacific.

Итак, как мне заставить Rails интерпретировать даты базы данных в нужном часовом поясе?

1 Ответ

1 голос
/ 09 июня 2011

Я нашел ответ.В environment.rb я добавил:

ActiveRecord::Base.default_timezone = :local

По какой-то причине по умолчанию было: utc.Документы говорят, что по умолчанию: utc, но мое приложение не было.Рельсы 3.0.8 к сведению.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...