Laravel チェックボックス・ラジオボタンとか周りの処理が甘い問題[解決済]
Laravelのフォーム周りで処理が甘いなーって部分があった。
特にチェックボックス・ラジオボタン。
ラジオボタンで、
<input id="men" name="sex" type="radio" value="1"> <label for="men">男</label> <input id="women" name="sex" type="radio" value="2"> <label for="women">女</label>
みたいな、name属性が同じラジオボタンを、
{{ Form::radio('sex', '1', false, array('id' => 'men')) }} {{ Form::label('men', '男') }} {{ Form::radio('sex', '2', false, array('id' => 'women')) }} {{ Form::label('women', '女') }}
で生成して、フォームをサブミットした場合に、
どちらを選択したか?ってのがうまくチェックに反映しないし、
ソースコードを見てみると、
<input id="men" name="sex" type="radio" value="1"> <label for="men">男</label> <input id="women" name="sex" type="radio" value="1"> <label for="women">女</label>
とかなってて、
両方とも value="1" になってたり。
もうひっちゃかめっちゃかでした。
○同じようなので悩んでいた人もいたようで・・・
http://questiontrack.com/laravel-4---inputold-for-radio-buttons-1077421.html
で、実際にフォームのHTMLを生成している、
/vendor/laravel/framework/src/Illuminate/Html/FormBuilder.php
を覗いてみたら、やはりプログラム自体がよろしくないみたい。。
で、何とかそのあたりのソースコード直すかー
と思ってしばらく試行錯誤してたんですが、ふと、
「ひょっとしたら最新版で直ってんじゃね・・・?」
と思って最新に替えたら案の定直っていた!!
githubを眺めている辺りだと、
https://github.com/laravel/framework/commit/d9872c3a537f902545057af778d9afb543b044df
ここら辺で修正対応が入ったようだーー!
困ったら最新のソースを確認するのも大事だな。と思った次第でした!