RubyでDateTimeを操作する方法についてはまだ少し混乱しています。GMTをデータベースに保存したいのですが、少なくともそうなると思います。しかし、どのようにして使用可能なローカライズされたDateTimeを作成するのでしょうか。
date = Date.new(2012, 11, 24)
=> #<Date: 2012-11-24 ((2456256j,0s,0n),+0s,2299161j)>
new_appt = DateTime.new(date.year, date.month, date.day, 10, 0, 0)
=> #<DateTime: 2012-11-24T10:00:00+00:00 ((2456256j,36000s,0n),+0s,2299161j)>
このDateTimeオブジェクトのGMTオフセットは+00:00です。指定された日付が夏時間を採用しているかどうかに応じて、-07:00または-08:00にします。最後のパラメータ(+7
または+8
)を追加できますが、計算方法は?
与えられた日付にタイムゾーンオフセットが何であるか(またはそうなるか)を伝え、それをDateTime.newオブジェクトに組み込んで、正しく保存(および取得)できるようにする方法はありますか?