Свой тип переменной в замыкании маршрута Laravel

Рейтинг: 0Ответов: 1Опубликовано: 29.05.2023

В маршрутизации в laravel для примера часто можно встретить такой код:

use .../Post;
use .../User;
Route::get("/user/{user}/post/{post}",function (User $user, Post $post){

   return ...

})

Как я понимаю, в функцию замыкания уже передаются переменные в виде объектов. Что и где нужно зарегистрировать, чтобы добиться такого эффекта? Как мне передать в функцию замыкания объект на основе собственного класса?(например , Product $product?)

Ответы

▲ 1

Если ваш класс - это Eloquent модель, то используйте настройку ключа (ссылка на раздел сломалась у них, ищите Customizing The Key).

Вы всегда можете реализовать собственную логику через Route::bind.

И конечно же, вы всегда можете использовать внедрение зависимостей.

Читайте документацию, у Laravel она отличная.