명시 적으로 시간대를 설정하지 않은 API에서 datetime 필드를 가져옵니다. 이것을 데이터베이스에 배치하면 datetime이 GMT가되어야한다고 가정하지만 시간대는 실제로 시카고 시간입니다. (나는이 API가 DST를 고려하는지 아직도 확신 할 수 없기 때문에 시카고 시간을 말합니다.) 데이터베이스에 추가하기 전에이 시간을 GMT로 변환하는 가장 좋은 방법은 무엇입니까? 여기 들어오는 xml 데이터의 시간대를 설정하십시오.
내가 말하는 겁니다 노드 중 하나의 XML 예제입니다 : 루비에서<FromDateTime>2011-03-17 08:00:00</FromDateTime>
, 나는 데이터베이스에이 레코드를 추가하려면이 사용하고 있습니다.
:starttime => DateTime.parse(row.at_xpath("FromDateTime/text()").to_s),
내가 무엇을 내가해야 할 것은 바로,이 마지막 루비 호출에 CST와 GMT 간의 시간 차이를 추가 할 생각? 내가 어떻게 그럴 수 있니?
감사합니다.
내가 좀 싫어 이 시간대 :) 시간은 스키마의 datetime으로 설정된 필드에서 작동합니까? 또는 열 유형을 변경하기 위해 마이그레이션을 만들어야합니까? – Sandro
로컬 시간으로 모델을 저장하면 AR이 db에 대해 UTC로 변환합니다. 기본적으로 너무 현지 시간에 그것을 밖으로 가져온다. localtime이 필요하다면 .utc를 호출 할 수 있습니다. –