TL; DR:これは実際に質問に答えるかどうか分かりませんが、同様の問題に遭遇し、GitHubでlaravel/frameworkプロジェクトに投稿したとき、自分の質問 - 回答を投稿しようとしていました。 $ route:list --sort
をチェックして、実際のルートリストを考慮の順に確認してください。
// Handle the public
Route::resource('your-resource', YourResourceController::class, [
'only' => [
'index',
'show'
]
])
->middleware(['web']);
// Put everything else behind a wall
Route::resource('your-resource, YourResourceController::class, [
'except' => [
'index',
'show'
]
])
->middleware(['web', 'auth']);
作成(/作成)は、表示(/ {your-resource})で終了します。 route:list
は以下を示します。
これにより解釈順序が本当にあるということである「欠陥」、隠れ
your-resource
your-resource
your-resource/create
your-resource/{your-resource}
:原因ルートブロックの順序に
your-resource
your-resource
your-resource/{your-resource}
your-resource/create
を。それらを切り替えると、問題が解決されます。
// Put everything else behind a wall
Route::resource('your-resource, YourResourceController::class, [
'except' => [
'index',
'show'
]
])
->middleware(['web', 'auth']);
// Handle the public
Route::resource('your-resource', YourResourceController::class, [
'only' => [
'index',
'show'
]
])
->middleware(['web']);
結果はどのような結果ですか? –
私はルートのリストを取得します。順序は正しい –