将参数从 laravel 中的路由传递到控制器

2022-08-30 11:42:42

这是LARAVEL 3的问题

给定以下路线

Route::get('groups/(:any)', array('as' => 'group', 'uses' => 'groups@show'));

以及我想使用的URL,

http://www.example.com/groups/1

我希望能够在控制器中使用该值。(:any)

我的控制器看起来像

class Groups_Controller extends Base_Controller {

    public $restful = true;    

    public function get_show($groupID) {
        return 'I am group id ' . $groupID;
    }  


}

这怎么可能做到?我已经尝试了一些东西,包括以下内容

Route::get('groups/(:any)', array('as' => 'group', 'uses' => 'groups@show((:1))'));

但它不起作用。

更新

每当我尝试传递参数时,如上所示,我都会得到一个404错误。

感谢您的帮助!


答案 1

您不需要任何特殊的东西来添加参数。就像你有它一样。

Route::get('groups/(:any)', array('as' => 'group', 'uses' => 'groups@show'));


class Groups_Controller extends Base_Controller {

    public $restful = true;    

    public function get_show($groupID) {
        return 'I am group id ' . $groupID;
    }  


}

答案 2

这是您在1行代码中所需要的。

Route::get('/groups/{groupId}', 'GroupsController@getShow');

建议:使用 CamelCase 而不是下划线,尝试并遵循 PSR-* 指南

希望它有帮助。


推荐