Laravel 尝试编辑用户时出错

Laravel 尝试编辑用户时出错,laravel,Laravel,我使用的是Laravel 5.4.18。当我试图编辑用户时出现此错误 Missing argument 2 for App\Http\Controllers\UsersController::edit() 这就是我所做的 https://paste.laravel.io/Pyw5M#18 更改此项: public function edit(User $user, $id) { $user = $user->find($id); return view('admin/u

我使用的是Laravel 5.4.18。当我试图编辑用户时出现此错误

Missing argument 2 for App\Http\Controllers\UsersController::edit()
这就是我所做的

https://paste.laravel.io/Pyw5M#18
更改此项:

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)
或者您可以使用资源控制器,以便为您处理:

您的路线是什么样子的?而且每次在控制器中注入
用户
模型都是不必要的。您只需在这些实例中使用
User::create([…])
User::find()
。如果您正在注入模型实例,那么使用模型绑定更像是“Laravel”方式。@jfadich非常感谢。这很有帮助。我很感激你帮你纠正了这个错误吗?如果没有,您能否为修复错误的
用户共享路径controller::edit()
@jfadich