【问题标题】:How to fix " Class" is not a valid entity or mapped super class. ? Symfony 2.8 [duplicate]如何修复“类”不是有效的实体或映射的超类。 ? Symfony 2.8 [重复]
【发布时间】:2019-08-20 23:11:23
【问题描述】:

实际上,我已经使用下一个命令从控制台生成了我的实体票证:
php app/console dictionary:generate:entity
它已经使用各自的 getter 和 setter 正确地生成了实体。

namespace RelacionesBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * Ticket
 *
 * @ORM\Table(name="ticket")
 * @ORM\Entity(repositoryClass="RelacionesBundle\Repository\TicketRepository")
 */
class Ticket
{
    /**
     * @var int
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     * @var string
     *
     * @ORM\Column(name="name", type="string", length=255)
     */
    private $name;

    /**
     * @var string
     *
     * @ORM\Column(name="description", type="string", length=255)
     */
    private $description;

    /**
     * Get id
     *
     * @return int
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * Set name
     *
     * @param string $name
     *
     * @return Ticket
     */
    public function setName($name)
    {
        $this->name = $name;

        return $this;
    }

    /**
     * Get name
     *
     * @return string
     */
    public function getName()
    {
        return $this->name;
    }

    /**
     * Set description
     *
     * @param string $description
     *
     * @return Ticket
     */
    public function setDescription($description)
    {
        $this->description = $description;

        return $this;
    }

    /**
     * Get description
     *
     * @return string
     */
    public function getDescription()
    {
        return $this->description;
    }
}

问题是当我编辑添加另一个属性的实体时:

    /**
     * @var string
     *
     * @ORM\Column(name="explanation", type="string", length=150)
     */
    private $explanation;


当我输入以下命令时:
php app/console dictionary:generate:entities RelacionesBundle/Entity/Ticket

我收到此错误:
“RelacionesBundle\Entity\Ticket”类不是有效的实体或映射的超类。


有什么建议吗?或者有什么问题?

【问题讨论】:

  • 我已经添加了注释@ORM/Entity 但它显示了同样的错误
  • 这个问题还有其他可能性。请检查它们。确定您的配置是否正确。当然不要忘记在 composer.json 中设置 psr-4 或 psr-0 配置。

标签: php doctrine-orm entities symfony-2.8


【解决方案1】:

我通过删除捆绑包的 Resources/config/doctrine 文件夹中的一个冲突的自动生成的 orm.php 文件解决了相同的异常;根据文档:“一个包只能接受一种元数据定义格式。例如,不能将 YAML 元数据定义与带注释的 PHP 实体类定义混合。”

【讨论】:

    猜你喜欢
    • 2014-01-20
    • 1970-01-01
    • 1970-01-01
    • 2013-02-12
    • 1970-01-01
    • 1970-01-01
    • 2013-02-05
    • 2016-09-09
    • 1970-01-01
    相关资源
    最近更新 更多