2015-01-30 1 views
0

나는 이것이 문제가되지 않아야한다고 생각하지만 Ruby에서 날짜가있는 온라인 솔루션을 찾을 수없는 것 같습니다. 양식에서 날짜를 받고 데이터베이스의 올바른 형식으로 서식을 다시 지정합니다. 나는 현재 strptime 날짜 형식이 "-"를 사용하고 있습니다. 사용자가 대신 "/"을 사용하기로 결정하면 코드가 손상됩니다. 사용할 수있는 "와일드 카드"가 있습니까? 사용자가 날짜를 분리하는 방법은 중요하지 않습니다."/"또는 "-"을 사용하는 Ruby on Rails

DateTime.strptime(params[:course][:start_date], "%m-%d-%Y").strftime("%Y-%m-%d") 

답변

1
DateTime.parse "2001-01-01" # => #<DateTime: 2001-01-01T00:00:00+00:00 ((2451911j,0s,0n),+0s,2299161j)> 
DateTime.parse "2001/01/01" # => #<DateTime: 2001-01-01T00:00:00+00:00 ((2451911j,0s,0n),+0s,2299161j)> 

http://www.ruby-doc.org/stdlib-2.2.0/libdoc/date/rdoc/DateTime.html#method-c-parse

+0

감사 카일. 그것은 "/"와 "-"를 모두 받아들이는 것 같지만 이상하게도, 그것을 년/일/월으로 분석합니다. 2015 년 6 월 12 일 날짜를 사용하면 2015/12/06으로 파싱되며 2015 년 6 월 15 일과 같은 날짜를 사용하면 잘못된 날짜 오류가 발생합니다. 그러나 날짜가 컨트롤러에 정확히 "06/12/2015"로 전송됩니다 – user3461645

+0

유일한 다른 제안은 만성 보석을 살펴 보는 것입니다 - https://github.com/mojombo/chronic –