Мой сайт развертывается на heroku. Time.now возвратится сегодня, но created_at поле записи (созданный прямо сейчас) скажет завтра. Я предполагаю, что это имеет отношение ко времени сервера?
Существует ли способ удостовериться, что они - то же? Лучше всего, Elliot
Обновление, таким образом, я сделал это "heroku, обстреливает time:zones:us"
это дало мне:
* UTC -10:00 *
Hawaii
* UTC -09:00 *
Alaska
* UTC -08:00 *
Pacific Time (US & Canada)
* UTC -07:00 *
Arizona
Mountain Time (US & Canada)
* UTC -06:00 *
Central Time (US & Canada)
* UTC -05:00 *
Eastern Time (US & Canada)
Indiana (East)
однако, когда я установил конфигурацию time_zone = 'UTC-05:00' в моей среде, приложению не удается запуститься. какие-либо идеи?
Rails всегда сохраняет время UTC в базе данных; само по себе поле created_at должно быть смещено в соответствии с вариацией вашего часового пояса относительно UTC.
Каждый раз, когда вы загружаете запись в приложение, поля преобразуются в часовой пояс, указанный в environment.rb. Это может быть что-то вроде этого:
config.time_zone = 'UTC'
Чтобы время было правильно преобразовано в ваш часовой пояс, вы можете изменить этот параметр конфигурации на тот, который соответствует вашему фактическому часовому поясу. Например:
config.time_zone = 'Central Time (US & Canada)'
Чтобы увидеть доступные зоны, введите "rake -D time" в вашем каталоге rails. Это даст вам инструкции о том, как получить имена часовых поясов для использования в конфигурации.