将参数从laravel中的route传递给控制器

将参数从laravel中的route传递给控制器,laravel,routing,Laravel,Routing,如何将参数从laravel中的路由传递给控制器 这是我的路线: Route::get('/{slug}','SampleController@showCms'); 这是我的控制器功能: public function showCms($slug){} 我还想从这个slug路由“/”: route(Route::get('/{slug}','SampleController@showCms')) 如何才能做到这一点?如果你做到了 Route::get('{slug?}','SampleCon

如何将参数从laravel中的路由传递给控制器

这是我的路线:

Route::get('/{slug}','SampleController@showCms');
这是我的控制器功能:

public function showCms($slug){}
我还想从这个slug路由“/”:

route(Route::get('/{slug}','SampleController@showCms'))
如何才能做到这一点?

如果你做到了

Route::get('{slug?}','SampleController@showCms');
两者

会对你的控制器造成打击

public function showCms($slug = null)
{
     if ($slug)
     {
         /// you got a slug here
     }
}

什么是
route(route::get('/{slug}','SampleController@showCms)
应该是什么?两条路径都是相同的,您到底想做什么?Route::get('/{slug}','SampleController@showCms“)这个olny我正在尝试的公共函数showCms($slug){}是控制器函数。我希望这个函数也用于路由(“/”,”SampleController@showCms)这条路线也是。好的,但是你想做什么?有什么问题?您的解决方案是否未按预期工作?我不确定我是否理解你的问题……没错,我看不出有任何问题。只需传递/{some data}并从控制器返回$slug。它应该可以工作,但是url是生成错误的。但是{some thing}可以工作。
http://site.dev/this-is-my-slug
public function showCms($slug = null)
{
     if ($slug)
     {
         /// you got a slug here
     }
}