Разбор всего объекта DateTime в Rails - PullRequest
0 голосов
/ 19 апреля 2010

В настоящее время мне дано три значения в таблице

Значение даты в формате% dd-% mname-% yy (т. Е. 06-мая-05), и я анализирую это, используя Date.parse (input, true), чтобы исправить проблему с ведущими значениями. 1003 *

Затем мне присваивается значение времени в виде% чч:% мм:% сс.% Мс (мсек, которое я могу взять или оставить) и третье значение смещения по Гринвичу.

Я все равно не вижу возможности преобразовать эти три значения в один объект DateTime, который позволил бы мне манипулировать им, используя диапазон инструментов ruby, без предварительного анализа второго значения во времени, каким-то образом изменяя смещение ((задается как значение + или - n) (как в +2 или -6) для целого со знаком, затем применяя его и затем анализируя все это для объекта super dateTime.

Должен быть лучший способ. Есть ли?

Ответы [ 2 ]

0 голосов
/ 19 апреля 2010

Хорошо, чтобы создать значение dateTime с указанным временем и датой и учесть смещение, вам нужен следующий код

d =  DateTime.parse(dateVal+" "+TimeVal)
      offset = Rational(offset_val,24)
      d = d.new_offset(offset)

Итак, возьмите свою дату, данную вам, как, скажем, 05 мая 2010 года, и временной интервал в форме чч: мм: сс

со смещением + - любое значение, например, -8

Тогда этот код сгенерирует вам новый объект даты, смещенный на требуемую сумму

0 голосов
/ 19 апреля 2010

Хронический может анализировать это (если вы объединяете все в одну строку, возможно, с некоторыми изменениями), но я не проверял.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...