2016-09-28 8 views
0

これは、要求を処理し、私のコントローラで私pubfで動作していない複数の選択ボックスからの入力を解析:Laravelは

public function addPermissionsToRoleHandler($rid, Request $request) 
{ 
     $role = Role::find($rid); 
     dd($request->permissions); 
     foreach($request->permissions as $perm) 
     { 
      $permission = Permission::find($perm->id); 
      $role->attachPermission($permission); 
     } 

     return redirect()->route('showSpecificRole', $rid); 
} 

は、これは私が私の複数選択ボックスを定義した方法です:

{!! Form::select('permissions[]', $permissions, null, array('class' => 'selectpicker show-tick', 'data-live-search' => 'true', 'id' => 'permission_select', 'multiple' => true)) !!} 

dd()がnullを返すのはなぜですか? $request->permissionは空です。 dd($request)にはtoken_しかありません。

+0

あなたのルートファイルと 'Form :: open'を表示してください –

+0

http://pastebin.com/WBrVDUER – Scarwolf

+0

私によれば、これはチェックボックスをチェックせずにフォームを送信すると起こります。 フォームからチェックボックスの値を受け取る場合は、フォームを送信する前にチェックボックスを選択する必要があります。 –

答えて

0

コメントする担当者がいませんので、回答として投稿しています。私は確信していませんが、Requestが最初の議論である必要があるためだと思いますか?

+0

悲しいことではありませんが、ありがとうございます! – Scarwolf

+0

こんにちは、私は答えを得たと思う、あなたがdd()を使っているからです。要求が完了することはできません。代わりにdump()を試してください。 – zacurry

+0

これは、 'foreach()'の引数が無効です。 'permissions []'が転送されないので、私はそれを考えていますか? – Scarwolf