2014-03-03

日付/時間フォーマットのデフォルトを設定

Qiitaにも書いてます。

Railsで日時を表示する際のデフォルトフォーマットが気に入らなかったので、デフォルトフォーマットを設定。
まず、Railsのデフォルトはこんな感じ。

> Time.now.to_s
 => 2014-03-03 15:21:57 +0900 


IT関連ではない日本人にとって、 YYYY-MM-DD は慣れていないだろうし、 +0900 は言わずもがななので、 YYYY/MM/DD HH:mm に統一したい。
デフォルトフォーマットの設定は config/initializers/time_formats.rb に。
ファイルがなければ新規作成。
中身はこんな感じに。

Time::DATE_FORMATS[:default] = '%Y/%m/%d %H:%M'
Time::DATE_FORMATS[:datetime] = '%Y/%m/%d %H:%M'
Time::DATE_FORMATS[:date] = '%Y/%m/%d'
Time::DATE_FORMATS[:time] = '%H:%M:%S'
Date::DATE_FORMATS[:default] = '%Y/%m/%d'

設定したらWebサーバを再起動。
そうするとこんな感じに表示される。
> Time.now.to_s
 => "2014/03/03 15:22" 

> Time.now.to_s(:date)
 => "2014/03/03" 

> Time.now.to_s(:datetime)
 => "2014/03/03 15:23" 

> Time.now.to_s(:time)
 => "15:23:07" 

ここで使えるフォーマット文字列は strftime の通り。
class Time.strftime

0 件のコメント:

コメントを投稿