2007年08月21日

select_dateと値の変換

date_selectタグの値はcontroller側で受けとるとうまいことdate型に変えてくれるのだが、select_dateタグを使うと、年、月、日がそれぞれハッシュになっていて、date[year],date[month],date[day]で値は取れるが勝手にはdate型にしてくれない。

 そこでselect_dateで出力されるHTMLをdate_selectで出力されるHTMLっぽく文字列置換してやるととりあえず、自動的にDate型に変換してくれた。

Helperで(app/helpers/application_helper.rb)

def alternate_select_date(date,options = {})
html = select_date(date,options)
html.sub!("[year]","(1i)")
html.sub!("[month]","(2i)")
html.sub!("[day]","(3i)")
end

を定義して

Viewで

<= alternate_select_date(Date.today,{:prefix => "hoge"}) >

などとして出力。

値を受けとったControllerでは

params[:hoge]

とするとDate型の値としてとってこれる。
タグ:Rails
posted by sistailsnow at 15:07| Comment(0) | TrackBack(0) | Railを走ってみた | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス: [必須入力]

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/52193589
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。