(Laravel)缺少中间件路由所需的参数

时间:2016-11-23 03:21:14

标签: php laravel laravel-5

  

错误:缺少[Route:auth.users.edit]所需的参数[URI:   AUTH /用户/ {用户} /编辑]。

我有一个中间件,如果用户遗漏了一些细节,他们将被带到编辑帐户页面并告知他们完成他们的帐户。

中间件看起来像这样。

public function handle($request, Closure $next)
{
    $user = auth()->user();

    if ( // some condition about account completeness ) {

        flash('Please complete your account');
        return redirect()->route('auth.users.edit');
    }

    return $next($request);
}

路线名auth.users.edit对应于路线auth/users/{user}/edit。我假设我得到的错误是抱怨中间件不知道{user}参数。

错误如下所示:

  

缺少[Route:auth.users.edit]所需的参数[URI:   AUTH /用户/ {用户} /编辑]

2 个答案:

答案 0 :(得分:0)

当你说

时,你是对的
  

我假设我得到的错误是抱怨的   中间件不知道{user}参数。

你应该试试这个

return redirect()->route('auth.users.edit', [$user]);

答案 1 :(得分:0)

I ended up just running

valet restart

and it worked.