2010-05-31 2 views
5

레일 3 베타에서 시간대 지원에 어려움을 겪고 있습니다. 버그인지 아니면 잘못했는지 알고 싶습니다. 그는 문제 : 당신이 볼 수 있듯이레일 3 시간대 오류

 
> Time.zone = 'Madrid' # it is GMT+2 
=> "Madrid" 
> c = Comment.new 
=> #<Comment id: nil, title: "", pub_at: nil> 
> c.pub_at = Time.zone.parse('10:00:00') 
=> Mon, 31 May 2010 10:00:00 CEST +02:00 
> c.save 
> c 
=> #<Comment id: 3, title: "", pub_at: "2010-05-31 08:00:00"> 
> c.reload 
=> #<Comment id: 3, title: "", pub_at: "2010-05-31 08:00:00"> 
ruby-1.8.7-p249 > c.pub_at 
=> Mon, 31 May 2010 13:00:00 CEST +02:00 

에서, pub_at 속성이 데이터베이스에 제대로 저장되지만이 검색 될 때 3 시간을 추가하고 나는 그것을 내 로컬 컴퓨터의 시간대를 사용하고 있기 때문에 그것이 의심이 GMT-3에 있습니다.

레일즈 2.3.5의 동일한 명령 순서가 완벽하게 작동합니다.

모든 toughts? 티켓을 신고해야합니까?

답변

3

내가 잘 기억한다면, 모든 날짜는 데이터베이스에 UTC로 저장됩니다.

그리고 레일과 콘솔은 같은 방식으로 날짜를 처리하지 않습니다!

그래서 당신은 당신의 application.rb

config.local_zone = 'Madrid' 

으로 시간대를 설정하여 응용 프로그램 내에서 테스트하려고한다 그리고 그 값을 인쇄! 정확한 시간을 볼 수 있습니다.

희망 도움말