解决laravel8框架报错Target class [Admin\IndexController] does not exist.

浏览847

laravel刚发布laravel8框架版本,博主下载安装来玩了下,在写路由的时候,访问URL就遇到这个错误。

Target class [Admin\IndexController] does not exist.

image.png

看着laravel8社区官网默认路由没错呀,以及看了下控制器名称,方法名称也都是正确的。

image.png

对比之前版本的框架,相比之下laravel5版本到laravel7版本都是用

image.png

可以看出来laravel8的写法变了。换成了新的写法了。博主也换成了laravel8的写法,

控制器文件:

<?php

namespace App\Http\Controllers\Admin;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;

class IndexController extends Controller
{
    public function index(){
        echo '后台首页';
    }

}
?>

路由代码:

<?php
use Illuminate\Support\Facades\Route;
Route::get('/', [Admin\IndexController::class, 'index'])->name('admin.index.index');
?>

看着没毛病呀,运行url访问就出现上面的错误。

解决方法

在路由数组加入App\Http\Controllers\Admin\即可。

<?php
use Illuminate\Support\Facades\Route;
Route::get('/', [App\Http\Controllers\Admin\IndexController::class, 'index'])->name('admin.index.index');

?>

再次访问URL,搞定。

image.png


  • 暂无任何回答