我正在使用 Laravel 5.4.36 应用程序,该应用程序的路由 label 在web.php中定义为
public List<SelectMaschines> Maschinen(SelectMaschines c_Auswahl)
{
do something that works;
return lst_masch;
}
public interface I_DO_Service
{
[OperationContract]
List<SelectMaschines> Maschinen(SelectMaschines var123);
[OperationContract]
SelectReasons Prod2(SelectReasons var231);
}
但是当我尝试使用
从控制功能重定向到路由标签时,Route::get('/label/', 'LabelController@index');
错误:InvalidArgumentException路由[label]未定义。
或
return redirect()->route('label');
错误:FatalErrorException类不是'App \ Http \ Controllers \ Redirect' 找到。
都无法正常工作,有人可以帮助我如何重定向到Laravel中的路线吗?
答案 0 :(得分:1)
route()
重定向到命名路由,因此您需要在routes/web.php
中命名路由:
Route::name('label')->get('/label/', 'LabelController@index');
答案 1 :(得分:0)
您可以将路由重写为Route::get('label', 'LabelController@index');
,然后致电return redirect()->route('label');
OR
将重定向调用重写为return redirect()->route('/label/');
请尝试这个
答案 2 :(得分:0)
在您的路线/web.php中:
Route::get('/label/', 'LabelController@index')->name('label');
在LabelController中,函数索引的末尾:
return redirect()->route('label');
答案 3 :(得分:0)
所以有很多方法可以做到,但是我更喜欢下面两种重定向方法。
1)没有定义路线名称:
Route::get('/label', 'LabelController@index');
return redirect('/label');
2)通过定义路线名称:
Route::get('/label', 'LabelController@index')->name('label');
return redirect()->route('label');
答案 4 :(得分:0)
使用
Route :: get('/ label','LabelController @ index')-> name('label');
代替
Route :: get('/ label /','LabelController @ index');
在标签后删除/。如果您不传递任何参数,则无需在路径末尾使用/