Laravel バルク削除(一括削除)の実装方法【効率化】

Laravelでの一括削除機能の実装は、以下の手順で行うことができます:

  1. IDリストを削除するためのフォームを作成してください。例:
<form action="{{ route('items.delete') }}" method="post">
    @csrf
    @method('DELETE')
    
    @foreach($ids as $id)
        <input type="hidden" name="ids[]" value="{{ $id }}">
    @endforeach

    <button type="submit">删除选中项</button>
</form>
  1. ルーティング内で、一括削除操作を処理するためのPOSTリクエストを定義します。例えば:
Route::delete('/items/delete', 'ItemController@batchDelete')->name('items.delete');
  1. 例えば、コントローラーで対応するメソッドを実装して、一括削除操作を処理する。
public function batchDelete(Request $request)
{
    $ids = $request->input('ids');

    Item::whereIn('id', $ids)->delete();

    return redirect()->back()->with('success', '批量删除成功!');
}

Laravelで一括削除機能を実装することができます。対応するモデルにSoftDeletesトレイトがあることを確認し、ソフト削除機能を実装してください。

bannerAds