Rails:日時/時刻表示方法(設定)を変更する

Railsでは、Time::DATE_FORMATS というハッシュに時刻出力用のフォーマットがデフォルトで定義されているので、このハッシュに独自のフォーマットを追加する。

デフォルトは以下のように出力されます。

 Time.now.to_s
 => 2014-08-27 08:35:20 +0900 

1. time_formats.rbを作成してフォーマットを追加する

config/initializers配下にtime_formats.rbを作成して、デフォルトで定義されているフォーマット意外にいくつか追加してみる。

2. 試してみる

Time.now.to_s
=> "2014/08/27 08:36”

Time.now.to_s(:date)
=> "2014/08/27”

Time.now.to_s(:datetime)
=> "2014/08/27 08:37”

Time.now.to_s(:time)
=> "08:37:36”

Date.today.to_s
=> "2014/08/27"

viewで使うときは、以下のような感じで!

<p><%= project.created_at.to_formatted_s(:datetime) %></p>