Настройка config.time_zone
изменяет часовой пояс по умолчанию для вашего приложения Rails. Это часовой пояс, который все время будет отображаться для ваших пользователей. Это также часовой пояс, который он использует при настройке атрибутов.
Однако Rails всегда будет хранить время в формате UTC в базе данных. Перевод происходит за кулисами, поэтому (большую часть времени) вам не нужно об этом беспокоиться.
Обычно этот часовой пояс меняется на тот, в котором будет находиться большинство ваших пользователей. Вы можете запустить это задание с граблями, чтобы просмотреть все часовые пояса, которые вы можете выбрать.
rake time:zones:all
Также очень легко изменить текущий часовой пояс для каждого запроса, что позволяет каждому пользователю настраивать, в каком часовом поясе он находится. Вот пример фильтра до, который вы можете добавить в контроллер приложения.
before_filter :set_user_time_zone
private
def set_user_time_zone
Time.zone = current_user.time_zone if logged_in?
end
См. этот эпизод Railscasts для получения дополнительной информации.