Laravel 5.6 で次のようにルーティングを設定しました。
Route::any('/menu-groups/{menu-group}/menu-items/update-order', 'MenuItemController@updateOrder') ->name('menu-groups.menu-items.update-order'); Route::resource('menu-groups.menu-items', 'MenuItemController');
ビューで route('menu-groups.menu-items.update-order', 123)
のようにすると次のような URL が発行されます。
http://example.com/menu-groups/123/menu-items/update-order
GET でアクセスすると次のようなエラーメッセージが表示されます。
Method App\Http\Controllers\MenuItemController::show does not exist.
たしかに show メソッドは実装していませんが show ではなく updateOrder メソッドが呼ばれるはずです。
試しに2番めの Route::resource() のルーティングを削除してアクセスすると Page Not Found(404) となってしまいます。
最初のルーティングが素通りされているようです。
なにかおかしなところがあるのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。