0

我一直在关注 Symfony 官方网站上的指南,通过 bundle symfonycasts/verify-email-bundle 以及 make:user 和 make:registration_form 命令设置用户。

一切都很好,显示了 Symfony 默认页面,但是在指南中它在浏览器中显示“转到/注册”,当我这样做时,我得到了

找不到“GET https://localhost/register”的路由

清除缓存并检查路由后,我确实看到路由可用,当我使用“php bin/console router:match /register”发出路由匹配命令时,我得到以下输出:

 [OK] Route "app_register" matches                                                                                                                                                                                                           

+--------------+----------------------------------------------------------------+
| Property     | Value                                                          |
+--------------+----------------------------------------------------------------+
| Route Name   | app_register                                                   |
| Path         | /register                                                      |
| Path Regex   | {^/register$}sDu                                               |
| Host         | ANY                                                            |
| Host Regex   |                                                                |
| Scheme       | ANY                                                            |
| Method       | GET|HEAD                                                       |
| Requirements | NO CUSTOM                                                      |
| Class        | Symfony\Component\Routing\Route                                |
| Defaults     | _controller: App\Controller\RegistrationController::register() |
| Options      | compiler_class: Symfony\Component\Routing\RouteCompiler        |
|              | utf8: true                                                     |
+--------------+----------------------------------------------------------------+

所以,一切看起来都很好。附加说明...我使用的是 Symfony 6.0,以及带有属性的 PHP8,所以我的路由函数有这个标题:

#[Route(path: '/register', name: 'app_register', methods: ['GET', 'HEAD'])]

...但因为我没有得到任何地方,我也在我的 routes.yaml 文件中添加了这个

app_register:
    path: /register
    controller: App\Controller\RegistrationController::register
    methods: ['GET', 'HEAD']

但是,尝试导航到该页面时仍然出现异常。我尝试在代码中切换到注释头,但仍然是同样的问题。

在我开始深入调试问题之前,我想知道是否有人有类似的问题或知道原因。

非常感谢您的帮助!

4

0 回答 0