我是Laravel的新手所以不确定这个符号。 Laravel文档显示您可以通过这种方式传递参数:
Route::get('user/{id}', function ($id) {
return 'User '.$id;
});
这非常直观。以下是我正在进行的项目中的一些现有编码,可在routes.php
中找到:
Route::get('geolocate', 'Api\CountriesController@geolocate');
# which of course will call geolocate() in that class
以下是我想将变量传递给的代码:
Route::get('feed/{identifier}', 'Api\FeedController@feed');
问题是,如何将$identifier
传递给班级:
feed($identifier)
谢谢!
另外还有一个问题,我如何评论{identifier}以便它是可选的,即只是/feed/
会匹配这条路线?
答案 0 :(得分:1)
您应首先创建一个如下所示的链接:
/feed/123
然后,在您的控制器中,该方法将如下所示:
feed($identifier)
{
// Do something with $identifier
}
Laravel非常聪明,可以将路由器参数映射到控制器方法参数,这很不错!
或者,您可以使用Request
对象返回identifier
值,如下所示:
feed()
{
Request::get('identifier');
}
这两种方法都有其优点,我个人使用第一个例子来获取一个或两个路由器参数,第二个例子用于我需要做更复杂的事情。