내 응용 프로그램은 mysql 데이터베이스로 양식을 만들고 이벤트를 저장합니다. 나는 그와 비슷한 것을 사용한다.레일 레일 콘솔 날짜
나는 프랑스이고 나의 현지 시간은 GMT + 200이고 Time.now는 로컬 Time Machine을 사용한다. 내가 레일 콘솔에서
Event.all
을 실행할 때 는하지만 문제가 레일 콘솔에서, 예를 들어 내가 볼 2016년 9월 12일 18시 30분 0초에서 이벤트를 만들 경우 :
#... <Event id: 5 ... start_date: 2016-09-12 16:30:00 ...
내가 2 시간 지연을 가지고,하지만 난
e = Event.find 5
e.start_date
을 수행 할 때 나는 결과를
이Mon, 12 Sep 2016 18:30:00 CEST +02:00
좋은 시간. 나는 MySQL의 로그 및 내 요청이 정확한 날짜를 삽입 참조 : 나는 정확한 내 응용 프로그램이 완벽하게 작동
INSERT INTO `events` ... 2016-09-12 18:30:00'
, 난 그냥 이해하고 싶다. UTC에 감사
내 설정의편집 # 1 콘텐츠/application.rb
config.active_record.default_timezone = :local
config.time_zone = 'Paris'
아니요. 내 데이터베이스를 확인하고 정확한 날짜가 있습니다. 처음부터 모든 방법을 사용할 때 문제가 있습니다. 콘솔은 event.start_date를 사용할 정확한 시간을 보여줍니다. – Alexandre
그리고'config.active_record.default_timezone = : local'을 사용하여 데이터베이스의 모든 것을 변경합니다. 왜냐하면이 명령으로 데이터베이스에서 날짜를 가져올 때 레일스가 로컬 시간대를 사용하기 때문입니다. http://guides.rubyonrails.org/configuring.html – Alexandre
그래, 내가 대답했을 때 아직 편집을 보지 못했습니다. 일반적으로 application.rb에서 '# config.time_zone ='중부 표준시 (미국 및 캐나다) '' – luissimo