Удаление и обновление записи в Laravel выкидывает 404 ошибку

Есть сущность проект, эта сущность может приадлежать двум другим, пользователю и компании

Все пользовательские проекты выводятся по маршруту

Route::get('/profile/{user:slug}/projects', [AdminProjectController::class, 'userProjects'])->name('userProjects');

А проекты относящиеся к компании

Route::get('/profile/{user:slug}/companies/{company:slug}', [AdminCompanyController::class, 'detailCompany'])->name('detailCompany');

Любой проект можно обновить и удалить, тк проекты одинаковы то за удаление отвечает один метод delete

public function delete(User $user, Project $project)
{
    $project->delete();

    return redirect()->back();
}

И его маршрут

Route::delete('/profile/{user:slug}/projects/{project:slug}', [AdminProjectController::class, 'delete'])->name('delete.project');

Так вот, если я удаляю проект который относится к сущности пользователя, то все ок, после удаление редиректит обратно. Но как только я пытаюсь обновить или удалить проект из под компании, я сразу же получаю 404 ошибку, меня перекидывает на маршрут удаления или изменения проекта, сам проект не удаляется


Ответы (1 шт):

Автор решения: ШайтанЯкубович

Вместо

Route::delete('/profile/{user:slug}/projects/{project:slug}', [AdminProjectController::class, 'delete'])->name('delete.project');

Надо было юзать

Route::delete('/profile/{user:slug}/projects/{project}', [AdminProjectController::class, 'delete'])->name('delete.project');
→ Ссылка