“Unknown Entity namespace alias”异常

时间:2017-09-17 14:56:37

标签: php exception orm symfony-3.3

我遇到了新的捆绑包AdminBundle,我刚刚创建了麻烦。我看到以下ORMException消息:

  

未知实体名称空间别名'AdminBundle'。

这是 DefaultController.php

<?php

namespace AdminBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;

use Symfony\Component\HttpFoundation\Request;

use Symfony\Component\HttpFoundation\Session\Session;

class DefaultController extends Controller
{
    /**
     * @Route("/dashboard", name="admin_default_dashboard")
     * @return Response
     */
    public function dashboardAction()
    {

        $manager = $this->getDoctrine()->getManager();
        $rObject = $manager->getRepository('AdminBundle:Object');

        return $this->render('AdminBundle:Default:dashboard.html.twig');
    }
}

这是我的 config.yml 文件中的学说配置:

doctrine:
    dbal:
        default_connection: default
        connections:
            default:
                driver:   pdo_mysql
                host:     "%database_host%"
                port:     "%database_port%"
                dbname:   "%database_name%"
                user:     "%database_user%"
                password: "%database_password%"
                charset:  UTF8

    orm:
        auto_generate_proxy_classes: "%kernel.debug%"
        naming_strategy: doctrine.orm.naming_strategy.underscore
        auto_mapping: true

这是 ObjectRepository.php 文件:

<?php

namespace AdminBundle\Repository;

use Doctrine\ORM\EntityRepository;
use AppBundle\Entity\Object;

class ObjectRepository extends EntityRepository
{
}

我试图查看类似线程的解决方案,但没有一个对我有用。

修改

这是对象实体代码:http://collabedit.com/agyh8

PS。谢谢,Arkovsky,征求意见。我肯定会更改实体名称。

1 个答案:

答案 0 :(得分:0)

似乎你制作了一个没有供应商名称的捆绑包,这可能就是为什么它会出现问题。 在Symfony中创建捆绑包时,请在symfony项目中使用此控制台命令:

php bin/console generate:bundle

然后他们会问你捆绑的名字。在这里你必须用这种模式写一些东西:Bob \ AdminBundle (您可以通过您喜欢的任何供应商名称更改&#34; Bob&#34;)。然后按照说明操作,它应该可以正常工作。 从现在开始,您将在控制器中使用的捆绑包的全名将是:&#34; BobAdminBundle&#34;。 示例:

return $this->render('BobAdminBundle:Default:dashboard.html.twig');