どうして rails では timestamp ではなく datetime を created_at などに利用するのですか?
Rails の ActiveRecord では、 migration において t.timestamps で導入される created_at や updated_at のカラムについて、少なくとも MySQL においては、 datetime 型を DB 上に作成します。
datetime 型は、いうなればその時刻をタイムゾーンなしで文字列で DB 上に保存しているのに近く、そのデータが動作していた AP(Rails) サーバーがどのタイムゾーンで動いていたのかの情報がない限り、そのデータは正しく取扱えなくなってしまいます。
database に時刻を保存するのならば、なので、 timestamp 型を用いた方が良さそうな気がするのですが、 Rails ではそのような設計にはなっていないです。
質問
- なぜ、 rails では
created_atやupdated_atにtimestampではなくdatetimeを利用するのでしょうか?