ROR + TodayDate в формате UTC - PullRequest
       10

ROR + TodayDate в формате UTC

0 голосов
/ 08 марта 2011

Если у меня есть @today = Date.today.to_s, как мне конвертировать @today into UTC (только с соответствующей датой)? Здесь мне нужна только дата, например 2011-03-08, т.е. 8 марта 2011 года. Пожалуйста, предложите что-нибудь?

На самом деле я ищу вчерашнюю дату ??

Ответы [ 4 ]

3 голосов
/ 08 марта 2011

Вам нужно будет преобразовать его в Time объект (или просто использовать время в любом случае), а затем вызвать Time#utc:

irb > Time.now
 => Tue Mar 08 15:32:36 +1100 2011 
irb > Time.now.utc
 => Tue Mar 08 04:32:40 UTC 2011 

Затем вы можете отформатировать его так, как вам нужно:

irb > @today = Time.now.utc
 => Tue Mar 08 04:34:25 UTC 2011 
irb > @today.strftime("%Y-%m-%d")
 => "2011-03-08" 
0 голосов
/ 08 марта 2011

Я настоятельно рекомендую вам перейти к часовым поясам в рельсах.С ним проще и намного удобнее работать, чем с Time.now.Вы должны иметь возможность установить часовой пояс в environment.rb с помощью config.time_zone = "Chennai" или вашего часового пояса.После этого вы сможете узнать время по UTC, выполнив команду Time.zone.now.Чтобы найти смещение UTC, вы можете набрать Time.zone.

0 голосов
/ 08 марта 2011

Попробуйте

1.day.ago.utc

или

1.day.ago.utc.strftime('%b %B, %Y')

В приведенном ниже формате должен быть указан формат даты «Вчера», который вы ищете в формате 07 марта 2011 года.Руководство по классу времени для получения дополнительной информации о функции strftime форматирования времени.Удачи!

0 голосов
/ 08 марта 2011

Если вы хотите конвертировать @today в UTC. Тогда попробуйте это

>> @today = Date.today.to_s
>> DateTime.parse(@today)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...