sessanの日記

主に開発技術関連でお勉強したことをまとめていくサイトです。

Railsで日付型をdatetime型に変えるときの注意点

Date.today.to_datetimeとかやると、タイムゾーン情報が消されてしまって意図した時間にならなかった。

1.9.3p327 :014 > Date.today.to_datetime
 => Tue, 19 Feb 2013 00:00:00 +0000 

しかし、to_timeならタイムゾーン情報が失われない。

1.9.3p327 :013 > Date.today.to_time
 => 2013-02-19 00:00:00 +0900 

なので、先にto_timeをして、to_datetimeをすると意図した時間をdatetime型でゲットできた。

1.9.3p327 :015 > Date.today.to_time.to_datetime
 => Tue, 19 Feb 2013 00:00:00 +0900