Symfony中tests文件夹内控制器路由无法识别,该如何解决?
问题解决办法
- Symfony默认只会扫描
src/目录下的控制器来加载路由,tests/目录不在默认扫描范围内,这就是你把控制器移到src下就正常的原因。 - 要让框架识别
tests/里的控制器路由,需要修改路由配置:
如果你用的是注解路由,打开config/routes/annotations.yaml,添加以下配置:test_controllers: resource: '../../tests/Controller/' type: annotation - 检查测试控制器的命名空间是否符合
composer.json里的PSR-4规则:应该是namespace Tests\Controller;,同时确保类上的@Route注解没有拼写错误。 - 最后执行
php bin/console cache:clear清理缓存,再运行php bin/console debug:router就能看到对应的路由了。
内容的提问来源于stack exchange,提问作者Lenwë Galathil
相关产品推荐
相关产品推荐

