Как несколько раз обновить строку laravel

Функция удаления все успешно Но функция обновления для всех ошибок, как это исправить

ошибка

public function deleteAll(Request $request)
{
    $ids = $request->ids;
    DB::table("target")->whereIn('id', explode(",", $ids))->delete();
    return response()->json(['success'=>"Products Deleted successfully."]);
}
    public function updateAll(Request $request, $id)
{
    $ids = $request->ids;
            DB::table('target')->whereIn('id',$id)->update(['first_name'=>'test']);
    return response()->json(['success'=>"Products update successfully."]);
}

Маршруты:

Route::delete('myproductsDeleteAll', 'AdminController@deleteAll');
Route::post('myproductsUpdateAll', 'AdminController@updateAll');

ошибка https://pastebin.com/9tA2VDpB

2 ответа

Вы можете попробовать ниже код

public function updateAll(Request $request, $id)
{
    $ids = $request->ids;
    foreach( $ids as $id ){          
      DB::table('target')->where('id', $id)->update(['first_name'=>'test']);
    }
    return response()->json(['success'=>"Products update successfully."]);
}

Надеюсь это поможет.

У вас есть ошибка в вашей функции updateAll $id не определено и есть $ids и вам нужно взорвать его, как сделано в deleteAll функция

public function updateAll(Request $request, $id)
{
    $ids = $request->ids;
        DB::table('target')->whereIn('id',explode(",", $ids))->update(['first_name'=>'test']);
    return response()->json(['success'=>"Products update successfully."]);
}
Другие вопросы по тегам