Laravel 重定向到带有参数问题的路由

Laravel redirect to route with parameter issue

我正在从这里重定向 url http://127.0.0.1:8000/aalc/submit_paper_step_one/9

到这个urlhttp://127.0.0.1:8000/aalc/submit_paper_step_one/9

为了做到这一点,我正在尝试 laravel 路由重定向的默认方法

这是我的路线代码

Route::get('/submit_paper_step_two/{paper_url_id}','HomeController@submit_paper_step_two')->name('submit_paper_step_two')->middleware('guard.verified:'.$journal->journal_slug.','.$journal->journal_slug.'.verification.notice');

这就是我重定向的方式

return redirect()->route( $this->current_guard.'.submit_paper_step_two', [ 'paper_url_id' => $id ] ); 

我被重定向到这个 url 这是错误的

http://127.0.0.1:8000/aalc/submit_paper_step_two?paper_url_id=9

我做错了吗?

第 1 步:更改此路线代码

Route::get('/submit_paper_step_one/{id}','HomeController@submit_paper_step_two')->name('submit_paper_step_one');

第 2 步:在您的代码中使用此重定向

return redirect()->route('submit_paper_step_one', $id );

两天后自己想通了 我的路线场景是这样的

Route::get('/submit_paper_step_two/{paper_url_id}','HomeController@submit_paper_step_two')->name('submit_paper_step_two')->middleware('guard.verified:'.$journal->journal_slug.','.$journal->journal_slug.'.verification.notice');

Route::post('/submit_paper_step_two','HomeController@submit_paper_step_two')->name('submit_paper_step_two')->middleware('guard.verified:'.$journal->journal_slug.','.$journal->journal_slug.'.verification.notice');

我定义了两条名称相同但方法不同的路线,以便实现我的目标 我更改了第二条路线名称并且有效

Route::get('/submit_paper_step_two/{paper_url_id}','HomeController@submit_paper_step_two')->name('submit_paper_step_two')->middleware('guard.verified:'.$journal->journal_slug.','.$journal->journal_slug.'.verification.notice');

Route::post('/submit_paper_step_two','HomeController@submit_paper_step_two')->name('submit_paper_step_two_post')->middleware('guard.verified:'.$journal->journal_slug.','.$journal->journal_slug.'.verification.notice');