3
私はLaravelで数時間以来ナットを行っています。Laravelリソースが間違ったメソッドを呼び出す
これは私のweb.php
ファイルです:
// Admin
Route::group(['prefix' => 'admin', 'middleware' => ['auth', 'admin'], 'namespace' => 'Admin'], function() {
Route::resource('cities', 'CitiesController');
Route::resource('stores', 'StoresController');
});
私はhttp://localhost:3000/admin/cities/create
にアクセスしていると私はshow
メソッドからエラーが出ます! URLがcreate
の代わりにshow
メソッドを呼び出しているのはなぜですか?そして、もし私がRoute::resource
を取り除いて、冗長なルートに置き換えたら、それは機能しますか?それはクレイジーです。
UPDATE
マイroute:list
:
| | GET|HEAD | admin | admin | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
| | GET|HEAD | admin/cities | cities.index | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
| | POST | admin/cities | cities.store | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
| | GET|HEAD | admin/cities/create | cities.create | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
| | GET|HEAD | admin/cities/{city} | cities.show | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
| | PUT|PATCH | admin/cities/{city} | cities.update | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
| | DELETE | admin/cities/{city} | cities.destroy | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
| | GET|HEAD | admin/cities/{city}/edit | cities.edit | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
| | GET|HEAD | admin/stores | stores.index | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
| | POST | admin/stores | stores.store | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
| | GET|HEAD | admin/stores/create | stores.create | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
| | GET|HEAD | admin/stores/{store} | stores.show | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
| | DELETE | admin/stores/{store} | stores.destroy | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
| | PUT|PATCH | admin/stores/{store} | stores.update | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
| | GET|HEAD | admin/stores/{store}/edit | stores.edit | App\Http\Controllers\Admin\[email protected] | web,auth,admin |
あなたは(の関連部分)を共有することができます'php artisan route:lの出力ist'とルートハンドラを作成しますか? – apokryfos
あなたはこのURL http:// localhost:3000/admin/cities/create –
にリクエストを作成していますか?Route Controllerのあいまいさを引き起こす 'admin/cities/create'と' admin/cities/{city} 'create'は' {city} 'の引数です。それで、なぜ 'show'メソッドを呼び出すのでしょうか。 –