Laravel,该类存在,但我得到了目标类[PagesController]不存在。

12 浏览
0 Comments

Laravel,该类存在,但我得到了目标类[PagesController]不存在。

我对Laravel还不熟悉,不知道我在这里漏了什么。

我在web.php中有以下内容:

use Illuminate\Support\Facades\Route;
Route::get('/', function () {
    return view('welcome');
});
Route::get('/Pages', 'PagesController@index');

我的PagesController.php文件如下:

namespace App\Http\Controllers;
class PagesController
{
    public function index()
    {
        echo 'Hello World';
    }
}

PagesController存在于Http/Controllers文件夹中,但当我访问/Pages时,出现了一个错误,错误提示是"目标类[PagesController]不存在"。我确定类名没有拼写错误,并且我已经搜索了解决方案,但没有任何效果。有人能给我修复这个问题的建议吗?

0
0 Comments

在Laravel 8中,如果使用之前的写法,可能会出现"Target class [PagesController] does not exist"的错误。解决这个问题的方法如下:

1. 确认你正在使用的Laravel版本是6、7或8。

2. 如果你正在使用Laravel 8,你不能像之前那样编写路由。正确的写法如下:

Web.php:

use App\Http\Controllers\PagesController;
Route::get('/Pages', [PagesController::class, 'index']);

或者:

Route::get('/Pages', '\App\Http\Controllers\PagesController');

你可以参考[Laravel官方文档中关于路由的部分](https://laravel.com/docs/8.x/routing#basic-routing)了解更多信息。

0