日時の表示フォーマット

吉見和也(Kazuya Yoshimi) 2008-04-22 23:17:41

viewで日時を表示するとき、strftimeというメソッドを使って表示フォーマットを指定できます。

でも毎回それを書くのはだるいので、strftimeをしてくれるhelperを作ったり

それすらめんどくさくて、プロトタイプの間は.to_s(:db)なんて手抜きしてみたり

けど、このto_sの引数の:dbってなに?

と思って調べてみたらTime::DATE_FORMATSに設定することで、任意のフォーマットを作れることが判明。ヘルパー作る必要なかった

使い方は、例えばenvironment.rbとかどこでもいいけど

Time::DATE_FORMATS[:jp] = "%Y年%m月%d日 %H時頃"

とかしてあげると、

>> Time.now.to_s(:jp)

=> "2008年04月22日 11時頃"

>> DateTime.now.to_s(:jp)

=> "2008年04月22日 11時頃"

ってなってステキ

けど

>> Date.today.to_s(:jp)

=> "2008-04-22"

こっちは駄目みたい。設定したのはTime::DATE_FORMATSなんだから当たり前か

押忍

※このエントリはZDNetブロガーにより投稿されたものです。朝日インタラクティブ および ZDNet編集部の見解・意向を示すものではありません。

SpecialPR