首页 > 解决方案 > 在 laravel 5.8 中定义一个新的路由别名

问题描述

我是 laravel 的新手。我正在使用 laravel 5.8 。我定义了一个新的路由名称signinroutes/web.php并在我的控制器中调用它以重定向到此页面。但是 laravel 抛出异常并出现错误"Method Illuminate\Routing\Redirector::signin does not exist

 //.../routes/web.php
 Route::get('/registration', 'Mycontrollers@index')->name('signin');

//in Mycontroller.php
//some code
public function index(){

 //some code
 return redirect()->signin();
}

但如果我用return redirect()->route('signin');它工作正常

标签: phplaravel

解决方案


您得到的错误是正确的,Redirector类不包含 function signin()

如果您想重定向到另一个路由,您必须使用路由名称(如您的工作示例中所示),或使用其名称空间的完整类。例如:

return redirect()->action('Mycontrollers@index');

您还可以使用以下命令直接重定向到路径to()

return redirect()->to('/registration');

推荐阅读