【问题标题】:parse variable from view to controller laravel-backpack将变量从视图解析到控制器 laravel-backpack
【发布时间】:2017-02-27 04:53:35
【问题描述】:

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

我能想到的是包列表中的每个圆形按钮都会将 id 解析为将调用backpackCrud 控制器的路由。并且该 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);

但它返回一个错误

路由模式“/admin/package/round/{RoundId}/{{RoundId}}”不能多次引用变量名“RoundId”。

我所知道的是我们无法将参数解析为 restfull 控制器,因为 restfull 是为了快速处理。那么我应该怎么做才能将 id 从视图解析到控制器。或者也许有漂亮的方法来进行查询?我真的很感激

非常感谢!

【问题讨论】:

    标签: laravel parsing routing laravel-backpack


    【解决方案1】:

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

    不可能是这样的:

    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');
    

    希望这对其他人有所帮助;)

    【讨论】:

      猜你喜欢
      • 2014-12-08
      • 1970-01-01
      • 2017-02-20
      • 1970-01-01
      • 2019-02-13
      • 2022-10-13
      • 2017-06-06
      • 1970-01-01
      • 2019-03-30
      相关资源
      最近更新 更多