又一个Unknown Entity命名空间别名错误(Symfony2,手动创建的实体)

时间:2016-02-03 07:05:05

标签: php symfony doctrine

我有[Doctrine\ORM\ORMException] Unknown Entity namespace alias 'src\AppBundle\Entity' 错误信息。

快速搜索引发了三个相关的SO问题:

here关于 用户创建的捆绑包中的问题,我在这里没有使用。

here在哪里 错误消息是由PHP代码获得的,而不是像我目前所做的那样在命令行中使用doctrine,而且

there答案建议sudo php app/console cache:clear --env=dev;我之后做了sudo chmod a+w app/cache/dev/annotations,但问题保持不变。

这是我做的:

1)使用php app/console doctrine:database:create

成功创建数据库

2)使用以下内容在app/Entity/Product.php中手动创建产品实体(以下代码为 从Symfony Book复制粘贴):

<?php

    namespace AppBundle\Entity;

    use Doctrine\ORM\Mapping as ORM;

    /**
     * @ORM\Entity
     * @ORM\Table(name="product")
     */
    class Product
    {
        /**
         * @ORM\Column(type="integer")
         * @ORM\Id
         * @ORM\GeneratedValue(strategy="AUTO")
         */
        protected $id;

        /**
         * @ORM\Column(type="string", length=100)
         */
        protected $name;

        /**
         * @ORM\Column(type="decimal", scale=2)
         */
        protected $price;

        /**
         * @ORM\Column(type="text")
         */
        protected $description;
    }

3)输入php app/console doctrine:generate:entities src/AppBundle/Entity:Product - 它产生了&#34;未知实体命名空间&#34;错误信息。

任何帮助表示感谢。

1 个答案:

答案 0 :(得分:3)

您的Symfony2应用程序中将使用/将使用两种语法。

  • \My\Company\Namespace\Entity\Product
  • MyCompanyNamespace:Product

我相信在您的代码/配置中放置src会违反PSR-0Symfony2能够很好地看到一切都被认为是一堆。这就是为什么你的应用程序必须至少有一个 - 一切都是捆绑