2011年10月27日木曜日

Time.nowの実装

生年月日のセレクトボックスを作る際以下の実装をする。
<%= f.date_select :BIRTHDAY, :use_month_numbers => true, :start_year => Time.now.year - 80,:end_year => Time.now.year %>
Time.now.yearと実装すると、”2011”と返してくれる。







生年が1930-2011まで指定されている(絵では表現できていませんが)。
このTime.nowだが、今回はレコードの更新日付に使おうと思い
def createメソッドに以下の実装を施した。

 @usr = Muser.new(params[:muser])
 #新規登録時間を登録
 @usr.INS_DATE = Time.now
 @usr.save

すると想定通り、INS_DATEには現在日付が入っている。結果は以下の通り。
2011-10-27 13:12:44
ん?何故昼時間が登録...あ!これ米国時間だ(この間数秒)。
なのでTimeZoneをTokyoにして再度実行。
application.rbに以下の行を追記


#TimeZone変更のため

config.time_zone = 'Tokyo'
config.active_record.default_timezone = :local








3回目のチャレンジでうまくいきました。今は夜。

0 件のコメント:

コメントを投稿