我尝试编辑用户时出错

时间:2017-04-10 22:32:14

标签: laravel

我正在使用Laravel 5.4.18。我尝试编辑用户时收到此错误

Missing argument 2 for App\Http\Controllers\UsersController::edit()

这就是我做的事情

https://paste.laravel.io/Pyw5M#18

1 个答案:

答案 0 :(得分:0)

改变这个:

public function edit(User $user, $id)
{
    $user = $user->find($id);
    return view('admin/users/edit', compact('user'));
}

对此:

public function edit(User $user)
{
    return view('admin/users/edit', compact('user'));
}

当你定义(User $ user)时,laravel会自动注入用户模型,因此无需根据id再次找到模型。

在这种情况下,我希望您的路线看起来像这样:

Route::get('users/{user}/edit', UserController@edit)

或者您可以使用资源控制器,以便为您处理: https://laravel.com/docs/5.4/controllers#resource-controllers