Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 25.08.2020 22:05:42

Замена айдишника в реквесте на соответствующую модель

Здравствуйте уважаемые форумчане. Столкнулся с таким вопросом: предположим что мы имеем форму с выпадающим списком, например, книг. Мы выбрали книгу и отправляем форму. Создали соответствующий кастомный реквест. И в него попадает айдишник книги. Можно ли на каком либо уровне подменить айдишник на соответствующую модель книги? Чтобы в контроллере я уже имел модель, а не делал выборку. Если можно, то как лучше это организовать?

Не в сети

#2 27.08.2020 23:39:19

Re: Замена айдишника в реквесте на соответствующую модель

Сделал это на уровне миддлеваров.

Не в сети

#3 28.08.2020 07:47:36

Re: Замена айдишника в реквесте на соответствующую модель

К сожалению данная тема не сработала, т.к. я не учел что миддлевара срабатывает до валидации.

Не в сети

#4 28.08.2020 13:30:08

TrueKanonir
Откуда: Ташкент
Сообщений: 221

Re: Замена айдишника в реквесте на соответствующую модель

Если я правильно понял вопрос, то в классе реквеста где проходит валидация
$this->request->add(['model' => Book::find($this->book_id)]);

Не в сети

#5 28.08.2020 23:42:19

Re: Замена айдишника в реквесте на соответствующую модель

Примерно правильно. Но в каком методе это прописать, чтобы модель добавилась автоматически? Чтобы я в контроллере прописал $request->book и получил готовую модель. Я понимаю что можно переопределить магический метод __гет. До него я пока толком не добрался, но не уверен что это хорошая идея. От чего вообще появилась данная мысль. В контроллере я могу просто получить модель книги таким образом function show(Book $book) если айдишник передан в урле. И это офигенно удобно. Система сама понимает что я хочу получить и даёт мне это. Хотелось бы похожий функционал в реквесте.

Не в сети

#6 02.09.2020 14:12:53

Re: Замена айдишника в реквесте на соответствующую модель

https://laravel.com/docs/7.x/validation … validation
тут описана работа с классом валидации реквеста. в этом классе и сделай

Изменено Eskono (02.09.2020 14:13:48)

Не в сети

Подвал раздела