1
私はドラフトとして保存できるフォームを持っています。最初のルートには送信されていないため、送信されたIDのパラメータはありません。保存されると、送信されたIDがルートに格納され、データを取得してユーザーに表示します。URIパラメータのない適切なLaravelルーティング
私は現在、これに対応するために複数のルートを作成していますが、これは非常に面倒であり、これがどのように維持するための問題になるかを見ることができます。
経路にパラメータがないこと、たとえば欠落している変数でエラーが発生するフォームルートやコントローラをどうやって説明できますか?
ルート:
Route::get('/request/{unit}/{id}',
'[email protected]')->name('request.show-new-request');
Route::get('/request/{unit}/{id}/{rid}',
'[email protected]')->name('request.show-request');
Route::post('/request/{unit}/{id}',
'[email protected]')->name('request.store-new');
Route::post('/request/{unit}/{id}/{rid}',
'[email protected]')->name('request.store');
コントローラ
public function showNewRequest($unit, $id) { }
public function showRequest($unit, $id, $rid) { }
フォーム/ブレード:
@if(isset($rid))
<form class="form-horizontal" method="POST" enctype="multipart/form-data"
action="{{ route('request.store', ['unit' => $unit, 'id' => $id, 'rid' => $rid]) }}">
@else
<form class="form-horizontal" method="POST" enctype="multipart/form-data"
action="{{ route('request.store-new', ['unit' => $unit, 'id' => $id]) }}">
@endif