路由中的 laravel 5.5 错误 - 未定义无效参数异常路由 [登录名]



我替换了我的网络.php 这个代码,与我在 Laravel 5.2 中的代码相同,现在我使用的是 Laravel 5.5,我在 5.2 版本中没有任何错误。

Route::get('/home', function () {
return view('home');
});
Route::get('/register', 'registerController@index');
Route::post('/register', 'registerController@register');
Route::get('/signin', 'signinController@index');
Route::post('/login', 'signinController@login');
Route::get('/logout', ['uses'=>'signinController@logout'])->middleware('auth');
Route::get('/profile', ['uses'=>'profileController@index'])->middleware('auth');
Route::get('/updateprofile', ['uses'=>'profileController@updateprofile'])->middleware('auth');
Route::post('/updateprofile', ['uses'=>'profileController@updateprofilesave'])->middleware('auth');
Route::post('/updateprofiles', ['uses'=>'profileController@updatechannelart'])->middleware('auth');
Route::get('/changepassword', ['uses'=>'profileController@indexpassword'])->middleware('auth');
Route::post('/changepassword', ['uses'=>'profileController@changepassword'])->middleware('auth');
Route::get('/article', 'articleController@index');
Route::get('/searchuser', ['uses'=>'searchController@index']); //Untuk searching user
Route::get('/searchuserpage', ['uses'=>'searchController@searchuser']); //searching user jquery 
Route::get('/photos', ['uses'=>'documentationController@indexphoto'])->middleware('auth');

然后我尝试访问URL/profile,这意味着需要首先进行身份验证,它向我显示InvalidArgumentException Route [login] not defined.如何解决此问题的错误。 谢谢

这是我的身份验证代码.php

public function handle($request, Closure $next)
{
if(Auth::Check()){
return $next($request);
}
else{
return redirect('/signin');
}
}

问题来自这样一个事实,即在实例化时代码中的某个地方,您引用了一个名为"login"的命名路由,但它没有在您的 web.php 文件中定义。

遇到此问题的一个例子是,您可能有一个重定向指向隐藏在其中一个控制器中的某个位置的此路由,例如:

return redirect()->route('login');

若要解决此问题,请将名称应用于适用的路由。

Route::post('/login', 'signinController@login')->name('login');

在项目中调用路由时,必须定义路由名称

如:

<form action:"{{route('login')}}" method="post">

在途中:

Route::post('/signin', 'signinController@index')->name('login')

这是命名路由的问题。请确保使用命名路线的所有位置。

Route::get('/signin', 'signinController@index')->name('login')

在这里,您可以看到我将此路由命名为login并且我可以使用route('login')帮助程序方法在任何地方调用此路由。

最新更新