Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将参数传递给';。指数';使用Laravel资源路由的控制器功能_Laravel_Laravel Routing - Fatal编程技术网

将参数传递给';。指数';使用Laravel资源路由的控制器功能

将参数传递给';。指数';使用Laravel资源路由的控制器功能,laravel,laravel-routing,Laravel,Laravel Routing,我正在使用资源路由,我需要向控制器的index函数传递一个参数 public function index($id){ // do something with $id } 如果我尝试创建一个表单(比如$user->id=3): 我在html中获得此链接: http://alumni.app/scopes?3这不好,因为它不遵循该命名路由的URI。那么,我应该如何进行呢 讨论:根据当前用户,我正在尝试加载范围的列表。我做了一次独立调查 作用域控制器。资源控制器/路由的索引操作在设计上不采用任何

我正在使用资源路由,我需要向控制器的
index
函数传递一个参数

public function index($id){
// do something with $id
}
如果我尝试创建一个表单(比如$user->id=3):

我在html中获得此链接:
http://alumni.app/scopes?3
这不好,因为它不遵循该命名路由的URI。那么,我应该如何进行呢

讨论:根据当前用户,我正在尝试加载
范围的列表。我做了一次独立调查

作用域
控制器。

资源控制器/路由的
索引
操作在设计上不采用任何参数

public function index($id){
// do something with $id
}
对于筛选,我建议您使用查询参数

/scope?userId=1

{{ Form::open(array('route' => array('scopes.index', array('userId' => $user->id)))) }}
另一种方法是(向下滚动一点)

如果将作用域资源嵌套在用户中,则可以获得此类url:

/user/1/scope

您可以创建一个单独的路由:

Route::get('scopes/{id}', ['as' => 'scopes.index', 'uses' => 'ScopeController@index']);
并将其从您的资源路由中排除:

Route::resource('scopes', 'ScopesController', ['except' => ['index']]);

Route::resource的索引路由不带参数。谢谢@lukasgeiter,为了更好的设计,我将嵌套路由。