Исключение Сериализация «Закрытие» не допускается в Queue.php (строка 127)

У меня есть такая ситуация, когда у меня будет несколько запросов на одну страницу. Пользователь должен искать аффиксы (префикс, инфикс, суффикс), поэтому я сделал 3 строки поиска для каждого из них. Я наконец (?) Нашел решение проблемы, но возникла другая проблема, и я понятия не имею, что могло бы вызвать ее.

Я получаю эту ошибку:

(1/1) Exception Serialization of 'Closure' is not allowed in Queue.php (line 127) at serialize(object(getPSearch)) in Queue.php (line 127) at Queue->createObjectPayload(object(getPSearch)) in Queue.php (line 108) at Queue->createPayloadArray(object(getPSearch), '', null) in Queue.php (line 86) at Queue->createPayload(object(getPSearch), '', null) in SyncQueue.php (line 37) at SyncQueue->push(object(getPSearch)) in Dispatcher.php (line 184) at Dispatcher->pushCommandToQueue(object(SyncQueue), object(getPSearch)) in Dispatcher.php (line 159) at Dispatcher->dispatchToQueue(object(getPSearch)) in Dispatcher.php (line 73) at Dispatcher->dispatch(object(getPSearch)) in DispatchesJobs.php (line 17) at Controller->dispatch(object(getPSearch)) in HomeController.php (line 42) at HomeController->findAction(object(Request)) 

Моя функция HomeController, findAction:

 public function findAction(Request $request){ if ($request->has('psearch')) { return $this->dispatch(new \App\Jobs\getPSearch($request)); } elseif ($request->has('isearch')) { return $this->dispatch(new \App\Jobs\getISearch($request)); } elseif ($request->has('ssearch')) { return $this->dispatch(new \App\Jobs\getSSearch($request)); } return 'no action found'; } 

Мои задачи getPSearch, getISearch, getSSearch (у них несколько одинаковые функциональные возможности, но разные переменные):

 protected $data; public function __construct($data) { $this->data = $data; } public function handle() { $data = $this->data; $prefixes = DB::table('circumfixes')->select('*')->distinct()->where('prefix', '=', $data.'-')->get(); $infixes=DB::table('infixes')->select('*')->distinct()->get(); $suffixes=DB::table('suffixes')->select('*')->distinct()->get(); $affixes=[ 'prefixes' => $prefixes, 'infixes' => $infixes, 'suffixes' => $suffixes ]; return view('home', $affixes); } 

Мои маршруты для них:

 Route::get('/home', 'HomeController@index')->name('home'); Route::post('/home', 'HomeController@findAction'); 

Я попытался найти, как решить проблему в Интернете, но я не могу найти решение, которое я мог бы понять. Я новичок в Laravel, поэтому у меня могут быть трудности с пониманием некоторых моментов, но я очень хочу его изучить! Надеюсь, я смогу найти ответ.

Вместо $ request … передать $ request-> all () в качестве аргумента для конструктора Jobs