控制器和命名空间的symfony错误

时间:2015-12-11 16:53:42

标签: symfony

我正在尝试symfony的学校项目,但我得到一个错误,让我停了几个小时,我找不到任何答案,所以我希望有人能帮助我。

我尝试用表格注册用户注册的视图,我遵循一些symfony食谱指南,但无法达到目的。

我告诉你情况,我有一个默认控制器的捆绑,我现在已经把所有渲染视图的功能放在一起,但是我想做得更好,并且让各种控制器有更好的组织。

我创建了一个名为的控制器:  的 AccountControler.php 是的 // src / AppBundle / Controller / AccountController.php

     <?php
    // src/AppBundle/Controller/AccountController.php
    namespace AdrianG\RegisterBundle\Controller;


    use Symfony\Bundle\FrameworkBundle\Controller\Controller;
    use AdrianG\RegisterBundle\Form\UserType;
    use AdrianG\RegisterBundle\Entity\User;
    use Symfony\Component\HttpFoundation\Request;
    use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;

    class RegistrationController extends Controller
    {
        /**
         * @Route("/register", name="user_registration")
         */
        public function registerAction(Request $request)
        {
//....

我认为路由是正确的:

user_registration:
    pattern:  /register
    defaults: { _controller: AdrianGRegisterBundle:Account:register}

我在尝试访问时遇到错误

本地主机/ symfony8 /网络/ app_dev.php /用户/注册

autoloader预期类“AdrianG \ RegisterBundle \ Controller \ AccountController”将在文件“/Applications/AMPPS/www/symfony8/src/AdrianG/RegisterBundle/Controller/AccountController.php”中定义。找到了该文件,但该类不在其中,类名或命名空间可能有拼写错误。

我可以使用我的路由和DefaultController.php访问任何地方 我搜索过,人们会说关于命名空间(¿我认为它是正确的吗?)或者说

我真的不知道可能会出现什么问题,而且一些帮助会非常好

Adrian Gonzalez

编辑: DefaultController.php和AccountControler.php在同一个文件夹中,它们是否具有相同的命名空间,如果是这样的话?

1 个答案:

答案 0 :(得分:2)

您的路由错误。
它应该是;

user_registration:
    pattern:  /register
    defaults: { _controller: AdrianGRegisterBundle:Registration:register}

该类的文件名也应为RegistrationController.php