无法为命名路由生成 URL,"main"因为此类路由不存在



我正在学习Symfony 6.0.9,我试图建立一个商店网站,我有一个问题:我创建了UserAuthenticator.php文件,我做了所有的更改,在我的数据库中创建新用户。但是当我尝试注册或登录时,出现以下消息:

Unable to generate a URL for the named route "main" as such route does not exist.

我尝试到一个symfony console debug:router,这是我得到的:

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
app_main                   ANY      ANY      ANY    /main
app_register               ANY      ANY      ANY    /register
app_login                  ANY      ANY      ANY    /login
app_logout                 ANY      ANY      ANY    /logout
-------------------------- -------- -------- ------ -----------------------------------

这是我的MainController.php:


namespace AppController;
use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationResponse;
use SymfonyComponentRoutingAnnotationRoute;
class MainController extends AbstractController
{
#[Route('/main', name: 'app_main')]
public function index(): Response
{
return $this->render('main/index.html.twig');
}
}

我试图删除"main"离开"/",但它不工作。

你能帮帮我吗?如果你需要其他截图,告诉我。谢谢你。

在应用程序的某个地方,您使用main路由而不是app_main路由。只需在您的项目中寻找它并替换它以使其工作!

好了,问题解决了。我在主控制器中更改了路由的名称,现在它完全工作了,谢谢你的回答^^

相关内容

最新更新