#laravel #controller #resources #laravel-8
#laravel #контроллер #Ресурсы #laravel-8
Вопрос:
при обновлении laravel в этом обновлении происходят некоторые изменения, поэтому, как вызвать контроллер ресурсов, приведите пример
контроллер вызывается как:
сначала используйте контроллер следующим образом: используйте App Http controllers имя контроллера;
и затем
Маршрут::get(‘/URL’, имя контроллера::class);
но таким образом я не могу вызвать контроллер ресурсов.
Комментарии:
1. так что используйте
Route::resource
тогда…. в чем проблема?2. Route::resource(‘/URL’, controller-name::class); но не вызывает ошибку отображения
3. в чем проблема? можете ли вы на самом деле объяснить, в чем проблема с контекстом
4. как вызвать метод контроллера ресурсов, дайте мне одну демонстрацию, чтобы я мог легко понять.
5. добро пожаловать в so, вы должны быть тем, кто выполняет поиск, поэтому поможет только вам, laravel.com/docs/8.x/controllers#resource-controllers
Ответ №1:
Определенный вами маршрут работает только для контроллеров с одним действием, которые реализуют этот __invoke()
метод.
Если вы имеете дело с контроллерами ресурсов, вы можете либо использовать синтаксис кортежа, либо Route::resource()
Пример синтаксиса кортежа:
use AppHttpControllersPostController;
Route::get('posts', [PostController::class, 'index']);
Route::post('posts', [PostController::class, 'store']);
Пример ресурса маршрута:
use AppHttpControllersPostController;
Route::resource('posts', PostController::class);
Ссылки:
https://laravel.com/docs/8.x/controllers#single-action-controllers
https://laravel.com/docs/8.x/controllers#resource-controllers