【问题标题】:Class App\Http\Controllers\CategoriesController does not exist类 App\Http\Controllers\CategoriesController 不存在
【发布时间】:2019-02-18 10:17:48
【问题描述】:

他试图查看页面,但它说:类 App\Http\Controllers\CategoriesController 不存在

文件夹结构图片https://ibb.co/gMBvwDJ

路线:

  Route::match(['get','post'],'/admin/categories/index','CategoriesController@Category');

控制器:

  public function index()
  {
    return view('admin.categories.index');
  }

【问题讨论】:

  • 你的文件夹结构只显示你的视图,而不是你的控制器。控制器通常位于app\Http\Controllers 目录下。
  • 是的,我只显示视图结构
  • 错误是说你的控制器丢失了。观点并不是真正的问题。我们无法知道您的控制器是否实际上位于正确的路径中,并且是否具有正确的文件名以及所提供的信息。
  • 请看这里希望你能理解ibb.co/CMzHZLs的结构,现在它说:对不起,找不到你要找的页面。

标签: laravel eloquent laravel-5.7


【解决方案1】:

首先你使用了错误的路由匹配定义,所以试试这个:

Route::match(['get','post'], 'CategoriesController@index');

其次,确保在您的 CategoriesController 中使用正确的命名空间,应该是:

namespace App\Http\Controllers;

在班级中名列前茅。

【讨论】:

  • 现在显示:404 错误页面未找到,m 使用此 URL:../public/admin/categories/index
  • @programmer0001 好的,然后离开中间部分,但是 3d 参数应该是 CategoriesController@index 而不是你的,因为那是方法名称。
  • 您的控制器类中有正确的命名空间吗?你的控制器在你的 App/Http 文件夹中吗?
  • 是的,它在 app/Http/Controllers/CategoryController.php .................... 并在顶部有这些行
  • 请在此搜索一下,希望您能理解ibb.co/CMzHZLs 的结构,现在它说对不起,找不到您要查找的页面。
【解决方案2】:

它给你这个错误是因为控制器找不到你正在调用的类,所以为了解决问题,在你的控制器顶部添加

使用应用程序{ModalName};

例如,如果您的模型称为类别,

使用应用\类别;

以及添加

命名空间 App\Http\Controllers;

【讨论】:

  • 我像使用 App\Category 一样使用这个;
【解决方案3】:

请确保您的控制器位于以下目录结构中,否则您必须修复命名空间问题

【讨论】:

  • 是的,上面的错误已经消失,现在它说找不到页面
  • 好..我想它现在进入了控制器...确保视图文件在正确的位置
猜你喜欢
  • 2019-11-04
  • 1970-01-01
  • 2017-12-23
  • 2020-05-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-05
  • 2016-09-16
  • 2020-01-07
相关资源
最近更新 更多