这是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错误。
感谢您的帮助!
答案 0 :(得分:28)
添加参数不需要任何特殊内容。就像你拥有它一样。
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;
}
}
答案 1 :(得分:18)
这是您需要的一行代码。
Route::get('/groups/{groupId}', 'GroupsController@getShow');
建议:使用CamelCase而不是下划线,试试&关注PSR-* guidelines。
希望它有所帮助。
答案 2 :(得分:10)
你可以像这样添加它们
Route::get('company/{name}', 'PublicareaController@companydetails');
答案 3 :(得分:2)
$ php artisan route:list
+--------+--------------------------------+----------------------------+-- -----------------+----------------------------------------------------+--------- ---+
| Domain | Method | URI | Name | Action | Middleware |
+--------+--------------------------------+----------------------------+-------------------+----------------------------------------------------+------------+
| | GET|HEAD | / |
| | GET | campaign/showtakeup/{id} | showtakeup | App\Http\Controllers\campaignController@showtakeup | auth | |
routes.php文件
Route::get('campaign/showtakeup/{id}', ['uses' =>'campaignController@showtakeup'])->name('showtakeup');
campaign.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
希望这能解决您的问题。 感谢