– view側でnameをブランケットで記述する。
– controllerのwhereInでチェックした値を呼び出せる
### blade
1 2 3 4 5 6 7 8 | <div class = "item" > {!! Form::checkbox( 'category[]' , 1, 1, [ 'class' => 'form-check-input' ]) !!} {!! Form::label( 'category[]' , 'シティホテル' , [ 'class' => 'form-check-label' ]) !!} </div> <div class = "item" > {!! Form::checkbox( 'category[]' , 2, 1, [ 'class' => 'form-check-input' ]) !!} {!! Form::label( 'category[]' , 'ビジネスホテル' , [ 'class' => 'form-check-label' ]) !!} </div> |
### controller
1 2 3 | if ( $request ->has( 'category' )){ $Hotels = Message::where( 'id' , $id )->whereIn( 'category_id' , $request ->input( 'category' ))->orderBy( 'created_at' , 'ASC' )->paginate(2)->onEachSide(1); } else |
input::all()の場合は、配列で渡ってくるので、そのままDBに流し込めば良い。
controller側で配列を作ろうとしたら、checkboxの最後の値しか渡ってこずに失敗しました。