2

我读了这个和我在谷歌上找到的其他一些东西。

所以,从 Doctrine 2.1 开始——如果我理解正确的话——Doctrine 可以处理带有外键作为主键的表。

但是,这不适用于我的桌子!

这是我生成的实体(带有app/console doctrine:mapping:convert annotation ./src --force):

namespace VENDOR\MyBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * ClientActivated
 *
 * @ORM\Table(name="client_activated")
 * @ORM\Entity
 */
class ClientActivated
{
    /**
     * @var boolean
     *
     * @ORM\Column(name="activated", type="boolean", nullable=true)
     */
    private $activated;

    /**
     * @var \VENDOR\MyBundle\Entity\Client
     *
     * @ORM\OneToOne(targetEntity="VENDOR\MyBundle\Entity\Client")
     * @ORM\JoinColumns({
     *   @ORM\JoinColumn(name="ref_id_client", referencedColumnName="id_client", unique=true)
     * })
     */
    private $refClient;
}

其中说,当我clear:cache

[Doctrine\ORM\Mapping\MappingException] 没有为实体“CDA\SvBundle\Entity\FidClie ntAvantagesSv”指定标识符/主键。每个实体都必须有一个标识符/主键。

当然,我尝试添加@ORM\Id$refClient删除JoinColumns[...],但当我尝试清除缓存时总是出现相同的错误消息!

(而且,以防万一您想知道,是的,我还尝试cache/*手动删除文件)

4

0 回答 0