42

这是 LARAVEL 3 的问题

鉴于以下路线

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

还有我想使用的网址,

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 错误。

谢谢您的帮助!

4

4 回答 4

33

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

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;
    }  


}
于 2012-09-28T23:04:48.190 回答
28

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

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

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

希望能帮助到你。

于 2013-07-31T10:47:58.783 回答
11

你可以像这样添加它们

  Route::get('company/{name}', 'PublicareaController@companydetails');
于 2014-05-13T12:02:31.453 回答
3
    $ php artisan route:list
  +--------+--------------------------------+----------------------------+--    -----------------+----------------------------------------------------+---------  ---+
  | Domain | Method                         | URI                        |  Name              | Action                                             |    Middleware |
  +--------+--------------------------------+----------------------------+-------------------+----------------------------------------------------+------------+
  |        | GET|HEAD                       | /                          |                           
  |        | GET                            | campaign/showtakeup/{id}   | showtakeup         | App\Http\Controllers\campaignController@showtakeup | auth       |     |

路由.php

  Route::get('campaign/showtakeup/{id}', ['uses' =>'campaignController@showtakeup'])->name('showtakeup');

活动.showtakeup.blade.php

 @foreach($campaign as $campaigns)


   //route parameters; you may pass them as the second argument to the method:

   <a href="{{route('showtakeup', ['id' => $campaigns->id])}}">{{ $campaigns->name }}</a>




            @endforeach

希望这能解决您的问题。谢谢

于 2015-11-19T05:53:22.327 回答