如何在控制器中创建一个目录 - laravel

时间:2016-07-07 10:47:43

标签: php laravel

我在Panel目录中创建了一个Controller目录。

enter image description here

login

中有AdminController.php个功能
class AdminController extends Controller
{
    //


    public function login()
    {
        return 'test';
    }
}

routes.php我写了这样一条路线:

Route::get('/cp/login','Panel\AdminController@login');

但是当我在url下面运行时,我遇到了一些错误,这个控制器不存在:

http://localhost:8000/cp/login

  

Route.php第280行中的ReflectionException:Class   App \ Http \ Controllers \ Panel \ AdminController不存在

2 个答案:

答案 0 :(得分:1)

尝试将相应的命名空间添加到AdminController文件的顶部,您还需要为其扩展的Controller类指定命名空间,因为它们位于不同的子命名空间下。 / p>

您可以在此处阅读有关PSR-4自动加载的更多信息http://www.php-fig.org/psr/psr-4/

根据您所在的目录结构,应该阅读

<?php

    namespace App\Http\Controllers\Panel

    use App\Http\Controllers\Controller;

    class AdminController extends Controller {

        //..

    }

答案 1 :(得分:1)

您应将名称空间添加到控制器

将名称空间更改为

命名空间App \ Http \ Controllers \ Panel;

Laravel将根据您的名称间隔而不是目录结构来解析控制器。