Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

В чем ошибка Laravel?

Челик) Новичок (0), на голосовании 1 день назад
 Route::post('/contact/submit', function () { 
return Request::all();
})->name('contact-form');
Показывает undefined method all
Call to undefined method GuzzleHttp\Psr7\Request::all()

Как исправить?
Голосование за лучший ответ
Сергей Стодольский Мастер (1181) 1 месяц назад
Ну так что по твоему мнению должен выполнять метод all() в объекте запроса?
Татьяна Просветленный (32571) 1 месяц назад
Ошибка возникает потому, что в вашем маршруте используется класс Request из пространства имен GuzzleHttp\Psr7, который не имеет метода all(). Вместо этого вам нужно использовать класс Request из пространства имен Illuminate\Http, который предоставляет метод all() для получения всех данных запроса.

Чтобы исправить эту ошибку, измените импорт класса Request в верхней части вашего файла маршрутов или используйте глобальный вспомогательный метод request(), который возвращает экземпляр текущего запроса.

Использование глобального вспомогательного метода request():
 Route::post('/contact/submit', function () {  
return request()->all();
})->name('contact-form');
Использование класса Illuminate\Http\Request:
 use Illuminate\Http\Request; 

Route::post('/contact/submit', function (Request $request) {
return $request->all();
})->name('contact-form');
Похожие вопросы