#php #laravel #routes #laravel-8 #laravel-routing
Вопрос:
Я работал над проектом ранее и столкнулся с этой ошибкой
SymfonyКомпонентМаршрутизацияИсключениеRouteNotFoundException Маршрут [/math/{ $math->идентификатор }/вопрос] не определен.
Вот мой маршрут:
Route::post('/math/{math}/question', [AppHttpControllersQuestionController::class, 'store'])->name('/math/{math}/question')->middleware('auth');
Маршрут Блейд-файла:
<form action="{{ route('/math/{ $math->id }/question') }}" method="post">
Контроллер:
public function create(Math $math)
{
return view('question.create', compact('math'));
}
Что я делаю не так?
Ответ №1:
- 1-й,
route()
использует->name()
параметр. - 2-е,
math/{math}/question
не очень хорошее название маршрута.
Измените свое имя на что-нибудь бессмысленное, например math_question,
, исправьте свой код:
Route::post('/math/{math}/question', [AppHttpControllersQuestionController::class, 'store'])->name('math_question')->middleware('auth');
Затем:
<form action="{{ route('math_question', ['math' => $math->id]) }}" method="post">
Ответ №2:
Route::post('/math/{math}/question', [AppHttpControllersQuestionController::class, 'store'])->name('mathQuestion')->middleware('auth');
<form action="{{ route('mathQuestion', ['math' => $math->id]) }}" method="post">
Комментарии:
1. Сработало идеально! Спасибо вам