解析变量从视图到控制器laravel-backpack

时间:2016-10-18 04:12:48

标签: laravel parsing routing backpack-for-laravel

我正在使用Laravel-Backpack。我们可以从视图到背包控制器解析一些参数吗?想象一下我有一些包的清单。每个包装有5个圆形,所以每个包装有5个按钮。当我点击第一个按钮(第1轮)时,它将打开包含round_id = 1.

的项目列表

我能想到的是,包列表中的每个圆形按钮都会将id解析到将调用backpackCrud Controller的路由。该id将用于项目列表的预先查询

我的按钮

<a href="{{ url($crud->route.'/'.'round/1'}}" class="btn btn-xs btn-primary btn-flat"  title="Delete"><i>2</i></a>

我的路线

CRUD::resource('package/round/{RoundId}', 'Admin\CrudController');

我的crud控制器

$round= \Route::current()->parameter('RoundId');

$this->crud->addClause('where', 'round', '=', $round);

但它返回错误

  

路线模式&#34; / admin / package / round / {RoundId} / {{RoundId}}&#34;不能引用变量名称&#34; RoundId&#34;不止一次。

我知道的是我们无法解析param到restfull控制器因为restfull是快速的crud。那么我应该怎么做从视图到控制器的解析id。或者也许有美丽的方式来进行查询?我真的很感激

非常感谢!

1 个答案:

答案 0 :(得分:2)

我找到了避免这种情况的方法。

它不能像:

CRUD::resource('package/round/{RoundId}', 'Admin\CrudController');

我们必须遵循默认路线的模式,如

CRUD::resource('someRoute/{someId}/someSecondRoute{someSecondId}', 'Admin\CrudController');

通过这种方式,我们可以在控制器中得到第一个和第二个参数:

$firstParam= \Route::current()->parameter('someID');
$SecondParam= \Route::current()->parameter('someSecondID');

希望这有助于其他人;)