Symfony在Controller中找不到路由

mnemlml8  于 2023-08-06  发布在  其他
关注(0)|答案(2)|浏览(97)

我最近有了一台新的笔记本电脑,在我安装了PHP 8.2.8和Symfony之后,我以为我可以启动一个新的Symfony 5.4 webapp项目,但是每当我启动本地服务器时,它都找不到我的Controller中的路由。
我使用了php bin/console make:controller命令,它以前已经完成了这个任务,但现在似乎不能让它工作了。
我试着在网上寻找答案,但据我所知,没有人遇到过同样的问题。我得到No route found for "GET http://127.0.0.1:8000/index"错误,而下面的代码在我的IndexController中:

<?php

namespace App\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;

class IndexController extends AbstractController
{
    #[Route('/index', name: 'app_index')]
    public function index(): Response
    {
        return $this->render('index/index.html.twig', [
            'controller_name' => 'IndexController',
        ]);
    }
}

字符串
正如你所看到的,只有一个模板。

-------------------------- -------- -------- ------ -----------------------------------
  Name                       Method   Scheme   Host   Path
 -------------------------- -------- -------- ------ -----------------------------------
  _preview_error             ANY      ANY      ANY    /_error/{code}.{_format}
  _wdt                       ANY      ANY      ANY    /_wdt/{token}
  _profiler_home             ANY      ANY      ANY    /_profiler/
  _profiler_search           ANY      ANY      ANY    /_profiler/search
  _profiler_search_bar       ANY      ANY      ANY    /_profiler/search_bar
  _profiler_phpinfo          ANY      ANY      ANY    /_profiler/phpinfo
  _profiler_search_results   ANY      ANY      ANY    /_profiler/{token}/search/results
  _profiler_open_file        ANY      ANY      ANY    /_profiler/open
  _profiler                  ANY      ANY      ANY    /_profiler/{token}
  _profiler_router           ANY      ANY      ANY    /_profiler/{token}/router
  _profiler_exception        ANY      ANY      ANY    /_profiler/{token}/exception
  _profiler_exception_css    ANY      ANY      ANY    /_profiler/{token}/exception.css
 -------------------------- -------- -------- ------ -----------------------------------


这些是路线。
我觉得在安装Symfony的过程中可能出了问题,但我不知道出了什么问题。

kxkpmulp

kxkpmulp1#

您应该设置路由器来解析Controller目录中文件的属性。将以下代码粘贴到config/routes/attributes.yaml

controllers:
    resource:
        path: ../../src/Controller/
        namespace: App\Controller
    type: attribute

字符串

6ju8rftf

6ju8rftf2#

确保在每次配置更改后执行bin/console cache:clear

相关问题