2011-09-17 2 views
1

왜 '시간'이 잘못된 날짜로 반환됩니까?Ruby 1.9.2를 사용하는 잘못된 날짜

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를 사용하고 있습니다. 감사합니다

답변

4

나는 두 번째 줄에 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)> 
+0

완벽하게 일했다! – iamtoc