Php Laravel资源调用了错误的方法

Php Laravel资源调用了错误的方法,php,laravel,Php,Laravel,我和拉威尔在一起几个小时后就发疯了 这是我的web.php文件: // Admin Route::group(['prefix' => 'admin', 'middleware' => ['auth', 'admin'], 'namespace' => 'Admin'], function() { Route::resource('cities', 'CitiesController'); Route::resource('stores', 'StoresContro

我和拉威尔在一起几个小时后就发疯了

这是我的
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调用
show
方法而不是
create
?为什么我要删除
Route::resource
并用详细的路由替换它呢?那太疯狂了

更新

我的
路线:列表

|        | GET|HEAD  | admin                     | admin            | App\Http\Controllers\Admin\DashboardController@index                   | web,auth,admin |
|        | GET|HEAD  | admin/cities              | cities.index     | App\Http\Controllers\Admin\CityController@index                        | web,auth,admin |
|        | POST      | admin/cities              | cities.store     | App\Http\Controllers\Admin\CityController@store                        | web,auth,admin |
|        | GET|HEAD  | admin/cities/create       | cities.create    | App\Http\Controllers\Admin\CityController@create                       | web,auth,admin |
|        | GET|HEAD  | admin/cities/{city}       | cities.show      | App\Http\Controllers\Admin\CityController@show                         | web,auth,admin |
|        | PUT|PATCH | admin/cities/{city}       | cities.update    | App\Http\Controllers\Admin\CityController@update                       | web,auth,admin |
|        | DELETE    | admin/cities/{city}       | cities.destroy   | App\Http\Controllers\Admin\CityController@destroy                      | web,auth,admin |
|        | GET|HEAD  | admin/cities/{city}/edit  | cities.edit      | App\Http\Controllers\Admin\CityController@edit                         | web,auth,admin |
|        | GET|HEAD  | admin/stores              | stores.index     | App\Http\Controllers\Admin\StoreController@index                       | web,auth,admin |
|        | POST      | admin/stores              | stores.store     | App\Http\Controllers\Admin\StoreController@store                       | web,auth,admin |
|        | GET|HEAD  | admin/stores/create       | stores.create    | App\Http\Controllers\Admin\StoreController@create                      | web,auth,admin |
|        | GET|HEAD  | admin/stores/{store}      | stores.show      | App\Http\Controllers\Admin\StoreController@show                        | web,auth,admin |
|        | DELETE    | admin/stores/{store}      | stores.destroy   | App\Http\Controllers\Admin\StoreController@destroy                     | web,auth,admin |
|        | PUT|PATCH | admin/stores/{store}      | stores.update    | App\Http\Controllers\Admin\StoreController@update                      | web,auth,admin |
|        | GET|HEAD  | admin/stores/{store}/edit | stores.edit      | App\Http\Controllers\Admin\StoreController@edit                        | web,auth,admin |

让您的展示店路线如下所示:

Route::get('/store/{store}', 'StoresController@show')->name('stores.show');

您能否共享
php artisan route:list
的输出(相关部分)和创建路由处理程序?您是否在此url上发出get请求您有路由
admin/cities/create
admin/cities/{city}
,这会给路由控制器造成歧义,因为
create
{city}
的参数。这就是为什么调用
show
method它应该是POST而不是
|GET | HEAD | admin/cities/{city}| cities.show
@ZaheerAttar这些路由是由
Route::resource
生成的。如何修复@Ajay它不应该发布在
节目中
。我想保留
/stores/