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

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

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

Как исправить?
3 ответа
Сергей Стодольский Мастер (1174) 2 недели назад
Ну так что по твоему мнению должен выполнять метод all() в объекте запроса?
Татьяна Просветленный (28804) 2 недели назад
Ошибка возникает потому, что в вашем маршруте используется класс 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');
Похожие вопросы