Requests - Слой в Laravel для валидации запросов из формы. В частности используется класс FormRequest.
Пример:
class StoreRequest extends FormRequest
{
public function authorize(): bool
{
return true;
}
public function rules(): array
{
return [
'title' => 'required|string|max:30',
'user_id' => 'required|int'
];
}
}
Работа с запросами в контроллере
Допустим у нас есть контроллер следующего вида:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class CashController extends Controller
{
/**
* Показать информацию в зависимости от данных из формы
*
* @param Request $request
* @return Response
*/
public function show(Request $request)
{
$year= $request->input('year');
if(!empty($year)) {
//
}
}
}
Для работы с запросами в нём нужно:
- Подключить соответствующий класс Request, в зависимости от того с чем работаем, с помощью конструкции
use
; - Передаем параметр
$request
в метод, который будет работать с запросом, указав при этом, тип классаRequest
. Экземпляр класса автоматически будет создан сервис-контейнером.
Если в маршруте задана передача параметров в контроллер, например так: Route::get('cash/{year}', 'CashController@show');
. То необходимые параметры передаются, следом за $request:
public function show(Request $request, $year)
{
if(!empty($year)) {
//
}
}