Laravel 10: группировка маршрута с префиксом для типа маршрута ресурса – не передача модели в маршруте

У меня есть следующие маршруты в моем файле web.php

Route::resource('/tenants', TenantControler::class);

Команда php artisan route:list показывает все маршруты ресурсов с названием модели.

арендаторы/{арендатор}

Мне нужен префикс, поэтому я создал группу маршрутов

Route::name("tenants.")->prefix("tenants")->group(function () {
    Route::resource('/', TenantControler::class);
});

теперь, если я попробую php artisan route:list в списке маршрутов не отображается название модели маршруты, но пустые скобки {}

арендаторы/{}

почему в маршруте отсутствует модель?

первый аргумент resource — это имя ресурса, а не путь... также путь для всех тех маршрутов ресурсов, которые вы сначала определили, начинаются с tenants... поэтому они уже имеют префикс...

lagbox 23.04.2024 02:00
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
1
1
64
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Проблема с вашим кодом заключается в определении маршрута ресурса. Когда вы определяете маршрут ресурса с пустым URI (т. е. '/'), Laravel интерпретирует его по-другому и не включает идентификатор ресурса (например, {tenant}) в сгенерированные URI маршрута.

Чтобы решить эту проблему, вам следует определить маршрут ресурса, не указывая пустой URI, также у вас есть опечатка.

Route::resource('tenants', TenantController::class);

Другие вопросы по теме