【问题标题】:Too few arguments to function App\Http\Controllers\UsersController::edit(), 1 passed and exactly 2 expected函数 App\Http\Controllers\UsersController::edit() 的参数太少,通过了 1 个,预期正好有 2 个
【发布时间】:2020-10-17 08:47:24
【问题描述】:

函数 App\Http\Controllers\UsersController::edit() 的参数太少,通过了 1 个,预期正好有 2 个

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

【问题讨论】:

  • 目前写的这个问题与javascript、jquery或css无关...请在您的问题中使用正确的标签。

标签: php laravel laravel-5


【解决方案1】:

您应该将您的方法编辑为以下内容:

public function edit (int $id , UserRepository $repo) {
  $user = $repo->find($id);
  return view('admin.user.edit', compact('user'));
}

并确保在文件顶部声明了适当的命名空间。

【讨论】:

    【解决方案2】:

    如果您的网址类似于:site.com/profile/1

    如果这个 url 对应这个编辑功能

    // you can just ask from your model to get the user that has id: 1
    // which is coming from Eloquent model.
    public function edit (User $user) {
       return view('admin.user.edit',compact('user'));
    }
    

    如果你的网址不是这样的,那么这个功能也不起作用

    【讨论】:

      猜你喜欢
      • 2020-04-22
      • 2020-11-30
      • 1970-01-01
      • 2020-01-29
      • 2020-05-06
      • 2020-01-23
      • 2018-10-11
      • 2019-10-29
      • 2019-07-06
      相关资源
      最近更新 更多