首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel 8错误:目标类[App\Http\Controllers\App\Http\Controllers\PostController]不存在

Laravel 8错误:目标类[App\Http\Controllers\App\Http\Controllers\PostController]不存在
EN

Stack Overflow用户
提问于 2022-05-25 11:40:13
回答 2查看 854关注 0票数 0

我在laravel 8中是新的,我添加了新的控制器并编辑了App\Http\Controllers\App\Http\Controllers\PostController,但是仍然有这样的错误:“目标类App\Http\Controllers\App\Http\Controllers\PostController不存在”

我是PostController.php

代码语言:javascript
复制
<?php

namespace app\Http\Controllers;


class PostController extends Controller
{
    public function index()
    {
        return view('articles');
    }

}

web.php

代码语言:javascript
复制
<?php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\PostController;

Route::get('/','App\Http\Controllers\PostController@index' );

我还通过添加命名空间尝试了另一种解决方案,但不起作用

代码语言:javascript
复制
$namespace = 'App\Http\Controllers'; 

它给了我一个错误:“没有找到类‘app\Http\Controller\Controller’”

如果这里有人能向我解释问题在哪里,我会感激的。

EN

回答 2

Stack Overflow用户

发布于 2022-05-25 12:09:11

只需将此转换为以下代码

代码语言:javascript
复制
<?php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\PostController;

Route::get('/','App\Http\Controllers\PostController@index' );

通过这一条:

代码语言:javascript
复制
enter code here

<?php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\PostController;

Route::get('/',[PostController::class, 'index']);

错误是您编写了一个laravel 7、6等代码,所以laravel 8中的新路线类似于NameOfController::class,'name_of_method‘,您可以查看laravel 8 docs https://laravel.com/docs/8.x/routing

票数 0
EN

Stack Overflow用户

发布于 2022-05-25 12:12:45

这是因为默认名称空间已从laravel 8中删除。

代码语言:javascript
复制
 /**
     * The path to the "home" route for your application.
     *
     * This is used by Laravel authentication to redirect users after login.
     *
     * @var string
     */
    public const HOME = '/backend/dashboard';

    /**
     * The controller namespace for the application.
     *
     * When present, controller route declarations will automatically be prefixed with this namespace.
     *
     * @var string|null
     */
    protected $namespace = 'App\\Http\\Controllers'; //uncomment this
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72376967

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档