У меня есть следующие маршруты в моем файле 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
в списке маршрутов не отображается название модели
маршруты, но пустые скобки {}
арендаторы/{}
почему в маршруте отсутствует модель?
Проблема с вашим кодом заключается в определении маршрута ресурса. Когда вы определяете маршрут ресурса с пустым URI (т. е. '/'), Laravel интерпретирует его по-другому и не включает идентификатор ресурса (например, {tenant}) в сгенерированные URI маршрута.
Чтобы решить эту проблему, вам следует определить маршрут ресурса, не указывая пустой URI, также у вас есть опечатка.
Route::resource('tenants', TenantController::class);
первый аргумент
resource
— это имя ресурса, а не путь... также путь для всех тех маршрутов ресурсов, которые вы сначала определили, начинаются сtenants
... поэтому они уже имеют префикс...