Каким образом получить ключ параметра в form request?

В Laravel, класс Form Request предоставляет удобный способ валидации входящих HTTP-запросов. Он позволяет определить правила для каждого параметра запроса и автоматически выполнить валидацию перед обработкой запроса контроллером.

Чтобы получить ключ параметра в Form Request, можно использовать метод rules(). Этот метод возвращает массив, в котором ключи представляют имена параметров запроса. Если вы хотите получить один ключ параметра в методе rules(), вы можете использовать свойство $this->route()->parameter('param'), где 'param' - имя вашего параметра.

Вот пример кода, который показывает, как получить ключ параметра в Form Request:

namespace AppHttpRequests;

use IlluminateFoundationHttpFormRequest;

class MyFormRequest extends FormRequest
{
    public function rules()
    {
        $key = $this->route()->parameter('param');

        return [
            $key => 'required'  // правила валидации для параметра $key
        ];
    }
}

В этом примере param - это имя параметра, для которого вы хотите получить ключ. Затем вы можете использовать полученный ключ в массиве правил валидации.

Кроме того, если вам нужно получить значение параметра, а не только его ключ, вы можете вызвать метод $this->route('param'), где 'param' - имя параметра запроса.

Приведенный выше код можно использовать в контроллере, где вы применяете Form Request:

namespace AppHttpControllers;

use AppHttpRequestsMyFormRequest;

class MyController extends Controller
{
    public function store(MyFormRequest $request)
    {
        // обработка запроса
        // ...
    }
}

В этом примере MyFormRequest - это ваш класс Form Request. Laravel автоматически валидирует запрос перед обработкой метода store(). Если валидация не проходит, будет сгенерировано исключение ValidationException. Если же валидация проходит успешно, выполнение продолжается внутри метода store(), где вы можете получить ключ параметра с помощью кода, приведенного в самом начале ответа.

Надеюсь, эта информация поможет вам лучше понять, как получить ключ параметра в Laravel Form Request. Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать их!