大量 CRUD REST edit/update 控制器

Mass CRUD REST edit/update controller

我正在尝试创建一个 RESTful CRUD controller,它有一点点但很重要的差异,可能与 REST 想法冲突,但无论如何:

我正在尝试像这样批量编辑项目 /photos/{photo}/edit 其中项目 ID 参数类似于 /photos/0&2&7/edit

在 Laravel 5.3 中确定这一点的正确方法是什么? 有没有办法使用一些方法注入或至少在控制器方法中接收一组参数?

public function edit($id) {
    //.......
}

感谢您的帮助,BR

使用Eloquent你可以做whereIn,所以你只需要分解照片参数,这样所有的id都在一个数组中:

public function edit($ids) {
    $photo_ids = explode('&', $ids);

    $images = Image::whereIn('id', $photo_ids)->get();
}

您可以像我在本例中所做的那样切换到静态访问图像模型,您可以只使用方法注入或依赖项注入图像模型,如果您需要 dependency/method 注入方面的帮助,请告诉我。

嘿,我猜你正在尝试模型绑定,所以你必须像这样使用

public function edit(Photo $photo) {
    //.......
}

你的路线应该是这样的

Route::model('photos','App\Photo');
Route::resource('photos','PhotoController');

或者你可以这样试试 你的路线和功能是这样的

Route::resource('photos','PhotoController');

public function edit($id) {
    $photo = Photo::findorFail($id);
}