Метод authorize в Form Request Laravel
До проверки полей Laravel вызывает
метод authorize. Он отвечает
на другой вопрос: не «правильно ли
заполнена форма», а «разрешено ли
этому пользователю вообще выполнять
действие». Например, создавать товар
может только админ, а редактировать
комментарий - только его автор.
Пока достаточно разрешить всем -
вернуть true. Подробно
вход и права разбираются
в учебнике
по авторизации:
<?php
public function authorize(): bool
{
return true;
}
?>
Если вернуть false, Laravel
ответит кодом 403 (доступ
запрещён). Правила из rules
при этом даже не проверяются:
смысла валидировать поля нет,
раз действие запрещено.
В учебнике по авторизации в
authorize подключают
Policy: «можно ли править этот
пост». Сейчас важно понять порядок:
сначала authorize, потом
правила, потом код контроллера.
В StoreEmployeeRequest
оставьте authorize
с true.
Временно верните false,
отправьте форму и посмотрите
ответ сервера.
Расскажите, чем authorize
отличается от правил в rules.