【Laravel】too few arguments to functionのエラーが出た時

直訳すると引数が少なすぎて機能しないという意味になる。
引数を書き忘れた際によくこのエラーが出ます。

解決策

requestでどんな値を渡しているか確認します。
また、ルーティング(web.php)でURLからコントローラ側へどんなパラメータを渡しているか確認しましょう。

Route::get('user/{id}', 'UserController@show'); //ここでidを渡している
public function show() //ルーティングでパラメータを渡しているのに記述がないのでエラーになる
    {
        $user = User::find($id);
        return view('users.show', compact('user'));
    }
public function show($id) //引数を記述する
    {
        $user = User::find($id);
        return view('users.show', compact('user'));
    }

コメントを残す

入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。

内容をご確認の上、送信してください。