2013-11-11 2 views
0

Я пытаюсь изменить следующие параметры в Ruby: Time.now.utc к Time.now.pstRuby: изменение времени проблема зоны

Однако, это не работает. Как вы думаете, что мне не хватает? Спасибо! Мел

+0

Это поможет, если вы показали код, который вы написали, и объяснил лучше, как это «не работает». –

+0

Привет Мэтт, конечно, это следующее: start_date => Time.now.utc, : end_date => (Time.now.utc + @ project.funding_closed_at.to_i.days) .utc Мне нужно изменить UTC на PST, но когда я это делаю, он, похоже, не вносит никаких изменений. Я использую ruby ​​1.9.3 – Mel

+0

Вам нужно использовать [TZInfo Ruby Gem] (http://tzinfo.github.io/) или [Rails ActiveSupport :: TimeZone] (http://api.rubyonrails.org /classes/ActiveSupport/TimeZone.html). Ваш вопрос недостаточно ясен, пока он сидит. Сначала прочитайте эти документы. –

ответ

0

Вы должны будете использовать TimeWithZone:

irb(main):005:0> Time.zone = 'Pacific Time (US & Canada)' 
=> "Pacific Time (US & Canada)" 
irb(main):006:0> Time.zone.now 
=> Mon, 11 Nov 2013 02:23:09 PST -08:00 

API Reference - http://api.rubyonrails.org/classes/ActiveSupport/TimeWithZone.html

+0

Привет, Мусанниф, спасибо. Как он интегрируется с моим текущим кодом, который выглядит следующим образом? "start_date => Time.now.utc,: end_date => (Time.now.utc + @ project.funding_closed_at.to_i.days) .utc" – Mel

+0

На самом деле, проще было бы просто вызвать '.in_time_zone (" Pacitic Time (US & Canada) ")' вместо '.utc' по вашему результату –

+0

спасибо Musannif! – Mel

Смежные вопросы