недопустимая дата с использованием Ruby 1.9.2 - PullRequest
1 голос
/ 17 сентября 2011

Почему «время» возвращается как недопустимая дата?

val = "9/22/2011 4:23 AM"
time = DateTime.parse(val).strftime("%Y-%m-%d %H:%M:%S").to_datetime
#at breakpoint: time = 2011-09-22T04:23:00+00:00 as a DateTime Object

@form_entry.storage_datetime = time # crashes here with invalid date

Если это помогает, я использую gem mysql 2.8.1 и Ruby 1.9.2.Спасибо

1 Ответ

4 голосов
/ 17 сентября 2011

Я получил ArgumentError на второй строке; не удалось создать объект DateTime.

Попробуйте использовать strptime вместо:

val = "9/22/2011 4:23 AM"
DateTime.strptime(val, "%m/%d/%Y %H:%M %p")
=> #<DateTime: 2011-09-22T04:23:00+00:00 (3536390423/1440,0/1,2299161)>
...