BadMethodCallException方法App \ Http \ Controllers \ StoreController :: show不存在

时间:2019-08-16 09:59:28

标签: laravel

我也是新手,我正在创建一个博客,特别是创建一个索引页面,在该页面上将显示所有博客,并且在显示时,单击特定博客标题而不是打开该博客会显示

  

BadMethodCallException方法   App \ Http \ Controllers \ StoreController :: show不存在。

Route::group(['middleware' => ['web']], function () {

    Route::get('/','StoreController@index');
    Route::resource('store','StoreController');    
    Route::resource('category','CategoryController');
    Route::resource('post','PostController');
    //Route::resource('user','UserController');
    //Route::controller('mail','MailController');

});

Route::group(['middleware' => ['web']], function () {

    Route::get('/','StoreController@index');
    Route::resource('store','StoreController');
    Route::resource('category','CategoryController');
    Route::resource('post','PostController');
    //Route::resource('user','UserController');
    //Route::controller('mail','MailController');

});

4 个答案:

答案 0 :(得分:0)

发布您正在使用的HTML代码以重定向到博客页面。除此之外,您似乎没有像应该使用的那样使用Laravel路由。

答案 1 :(得分:0)

确保您的控制器“ StoreController”具有show方法。

https://laravel.com/docs/5.8/controllers#resource-controllers

答案 2 :(得分:0)

您创建了StoreController吗?如果确实如此,则表明您的控制器缺少show()函数,该函数应处理特定的博客节目。是否使用-r标志创建了它,就像这样:

php artisan make:controller StoreController -r

这将使用所有必要的方法自动创建资源控制器:

  1. index()
  2. show()
  3. create()
  4. store()
  5. update()
  6. delete()

有关官方documentation中的资源控制器的更多信息

答案 3 :(得分:0)

我的工作状况很好,但是突然开始抛出错误。 创建一个新控制器,将所有方法从旧控制器复制并粘贴到新控制器。这解决了我的问题。希望它能解决您的问题。例如,我以前的控制器是WebsiteController,并重命名为WebController。 切记也要更改路线中的控制器。 希望有人帮助解释造成这种情况的原因。