f.check_box・check_box_tag、 f.radio_button・radio_button_tagのchecked

f.check_box・check_box_tag、 f.radio_button・radio_button_tagのチェック済を設定するためのcheckedが何回やってもややこしすぎるので、まとめておく。

■f.〜の場合
f.check_box
check_box(オブジェクト名, options = {}, チェック時の値, 未チェック時の値)
<%= f.check_box(:object_name,{:checked=>true},"チェック時の値","未チェック時の値") %>

f.radio_button
radio_button(オブジェクト名,値, options = {})
<%= f.radio_button:object_name,"値",{:checked=>true} %>
f.〜の場合チェックだけのパラメーターはないため、オプション{}内で:checked=>"checked"を指定する。

{:checked=>true}が正しい指定の仕方のようだが、
{:checked=>"checked"}としてもチェックはされる。
しかし、明示的に未チェックにしておきたい場合に不都合があるので、{:checked=>true}とした方がいいと思う。


■〜_tagの場合
check_box_tag
check_box_tag(カラム名,値,チェック済(true or false), options = {})
<%=check_box_tag :column_name,"値",true%>
radio_button_tag
radio_button_tag(カラム名, 値,チェック済(true or false), options = {})
<%=radio_button_tag :column_name,"値",true%>
〜_tagの場合はチェックだけのパラメーターをboolean(true/false)で指定する

正しい指定はtrue/falseのようだが、こちらもf.〜と同じく"checked"としてもチェックされる。
しかしやはりこちらも明示的に未チェックにする場合には不都合がでるので、true/falseが無難かと。

ただ、こちらの場合は直前にチェック値を指定するので、その値がbooleanだった場合は
<%=check_box_tag :column_name,true,true%>
となるので少々わかりづらくなる。


タグ:Rails
posted by digital-squad at 2009年08月19日 16時04分 | Comment(0) | TrackBack(0) | Ruby on Rails / Ruby
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

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


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。

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

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