2017-07-16 101 views
0

我想用一些參數從我的控制器調用路由功能。Laravel 5.4:使用參數調用控制器的路由功能

這是我的控制器

public function myFunction($id, $name) 
{ 
    $id = 1; 
    $name = 'john'; 

    return redirect()->route('details/' . $id . '/' . $name); 
} 

這是我的路線

Route::get('details/{id}/{name}',['uses' =>'[email protected]']); 

這是當我運行該腳本,我得到的錯誤。

InvalidArgumentException in UrlGenerator.php line 304: 

Route [details/1/john] not defined. 

請幫助

回答

2

route()助手要求傳遞路線名稱和參數:

function route($name, $parameters = [], $absolute = true) 
{ 
    return app('url')->route($name, $parameters, $absolute); 
} 

所以,你需要給你的路線名稱:

Route::get('details/{id}/{name}',['uses' =>'[email protected]'])->name('details'); 

..然後你可以傳遞一個數組中的參數:

return redirect()->route('details', array('id' => $id, 'name' => $name)); 

希望這有助於

+1

刪除我的回答,您可以通過幾秒鐘打我:) – sumit

+0

噢對不起的人( – verax