Laravel Controller不存在,即使它显然存在

jam*_*dri 3 php laravel laravel-4

我得到的错误是控制器不存在,即使我知道它,这是代码.

Route.php

Route::get('mdpay/template', array("uses" => "templateController@index"));
Run Code Online (Sandbox Code Playgroud)

templateController.blade.php

class templateController extends BaseController {

  public function index()
  {
    echo "made it";
  }


}
Run Code Online (Sandbox Code Playgroud)

为什么我可能会收到此错误:类TemplateController不存在

=================更新:==================

好的,所以我创建了正确的路线,重命名了我的文件,并更正了类名,我仍然想出了这个错误.

文件名:

templateController.php

// File Name: TemplateController.php
class TemplateController extends BaseController {
    public function index()
    {
        // app/views/myView.blade.php
        echo "hello";
    }
}
Run Code Online (Sandbox Code Playgroud)

我的路线是:

Route::get('mdpay/template', array("uses" => "TemplateController@index"));
Run Code Online (Sandbox Code Playgroud)

仍然接收控制器不存在错误.我的所有其他控制器(其他3个)都在工作,除了这个.

Mar*_*lln 7

如果您使用标准的composer classmap自动加载器,则composer dumpautoload每次创建新文件时都需要.

因此,要使用Laravel给出的标准编写器设置创建一个新的控制器:

  1. app/controllersnamed中创建一个新文件TemplateController.php
  2. 打开终端并运行 composer dumpautoload

正如之前的用户所说,只有视图文件才能以.blade.php.


小智 5

如果您使用的是 Laravel 8,请将此行添加到您的 RouteServiceProvider.php(您可以使用 CTRL + P 进行搜索):

protected $namespace = 'App\Http\Controllers';
Run Code Online (Sandbox Code Playgroud)

这为我解决了这个问题。