2017-02-22 19 views
0
@time = Time.now 
if @time.zone == "IST" 
    @time = Time.now.utc 
end 

Я пробовал вышеуказанный код, и он работает для меня. но как изменить время в зависимости от страны, когда приложение открывается в какой-либо другой стране.Как конвертировать формат часового пояса автоматически в зависимости от страны

i.e., Если приложение открыто в PDT, оно должно показывать время в формате PDT, когда одно и то же приложение открывается в UTC, оно должно показывать время в формате UTC, автоматически проверяя зону. Как применить это для всего часового пояса в рубине?

Я пробовал проверять один часовой пояс, как это сделать на весь часовой пояс !!

Есть ли какой-нибудь жемчуг?

Спасибо ..

ответ

0

Это будет делать то же самое, как config.time_zone но на каждого запроса основе. Я по-прежнему рекомендую изменить стандартную конфигурацию config.time_zone в часовом поясе, который является хорошим стандартом для ваших пользователей.

around_action :user_time_zone, if: :current_user 

def user_time_zone(&block) 
    Time.use_zone(current_user.time_zone, &block) 
end 
+0

Я использовал вот так: around_action: user_time_zone, если:: session [: user] и im получает ошибку «Символ как массив». – user7348784

+0

Вы установили сеанс [: пользователь] раньше? что-то вроде этого: session [: user_id] = user.id – Koche

+0

no i did not .... – user7348784