Symfony类区分大小写错误

时间:2018-01-06 23:35:17

标签: php symfony routes yaml

我是symfony的新手 - 本周末刚买了一个应用程序,并试图了解如何将各种东西放在一起。

我用控制器和模板创建了一条路线。

routes.yaml

test:
    path: /test
    controller: App\Controller\test::initialize

test.php (控制器)

namespace App\Controller;

use Symfony\Component\HttpFoundation\Response;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;

class test extends Controller {

    public function initialize() {

        return new Response("hello test");
    }
} 

现在我只想重命名我的类,使其遵守类名约定(大写)。

class test {...} ----> class Test {...}

路线将遵循:

test:
    path: /test
    controller: App\Controller\Test::initialize  # test becomes Test

简单。

但是当我这样做时,我得到一个运行时错误:

Case mismatch between loaded and declared class names: "App\Controller\test" vs "App\Controller\Test".

我尝试清除服务器缓存。在重新命名该类的所有提及之后,我真的不明白App\Controller\test在哪里被阅读。

可能导致此错误的原因是什么?

1 个答案:

答案 0 :(得分:0)

对于有此问题的人,上述两条评论解决了我的问题。

  • Symfony要求控制器文件名与类
  • 匹配
  • 运行rm -r var/cache以清除超出bin/console cache:clear命令
  • 的缓存