[前][次][番号順一覧][スレッド一覧]

rails:2010

From: Keiji Yoshimi <walf443@g...>
Date: Sun, 11 Feb 2007 10:41:57 +0900
Subject: [rails:2010] Re: カラム値の表示変更方法

吉見です。

> 先ほど教えて頂いた方法を用いて、時間をdate_select ヘルパーを利用して編集 
> しようとすると次のようなエラーが出ます。
>  
> undefined method `year' for "2007/02/11":String
>  
> 当たり前かも知れませんが、再定義したcreated_onが返すのは
> 文字列なのでdate_select ヘルパーを使うのは無理のようです。
>  
> この方法を用いると簡単に表示が出来る反面、Timeオブジェクトとして
> 扱ってくれなくなるのが辛いところですね。
>  
> やはり別名の関数として定義するのがいいのでしょうか?

Timeインスタンスが文字列として期待されているところでのみ形式を変更すれば良いのであれば
Timeクラスを拡張するという方法もあります。

# in config/environment.rb
ActiveSupport::CoreExtensions::Time::Conversions::DATE_FORMATS.merge!({
  :default => "%y年%m月%d日 %H:%M",
})

これならテンプレートに渡されたTimeインスタンスは標準でYYYY/MM/DDとできます。

# あまり好ましい方法ではないかもしれませんが。

--
ML: rails@r...
使い方: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]

   @  2005 2007-02-10 10:20 [sato1192two9low@y...] カラム値の表示変更方法                  
      2006 2007-02-10 12:40 ┗[43hara@g...         ]                                       
      2007 2007-02-10 12:44  ┗[43hara@g...         ]                                     
   @  2008 2007-02-11 01:57   ┗[sato1192two9low@y...]                                   
   @  2009 2007-02-11 02:13    ┗[sato1192two9low@y...]                                 
->    2010 2007-02-11 02:41     ┗[walf443@g...        ]                               
   @  2012 2007-02-11 04:49      ┗[sato1192two9low@y...]                             
      2014 2007-02-11 06:30       ┗[walf443@g...        ]                           
      2015 2007-02-11 17:41        ┗[43hara@g...         ]