主键缺少值

时间:2019-05-24 12:58:28

标签: php symfony doctrine-orm doctrine

我正在从教义2.3升级到2.5,并且某些关系破裂了。

我看了一下其他堆栈溢出问题。但是这些类只有一个id注释,联接列是根据它们的db列名而不是实体上的变量名来命名的

/**
 * @Entity
 * @Table(name="iso_country_shipping_display")
 */
class IsoCountryShippingDisplay {
    /**
     * @Id
     * @GeneratedValue
     * @Column(name="iso_country_shipping_display_id", type="integer", nullable=false)
     */
    private $id;

    /**
     * @ManyToOne(targetEntity="namespace\Website")
     * @JoinColumn(name="website_id", referencedColumnName="base_website_id", nullable=false, unique=false)
     * @var Website
     */
    private $baseWebsite;

    /**
     * @var IsoCountry
     * @ManyToOne(targetEntity="namespace\IsoCountry")
     * @JoinColumn(name="iso_3", referencedColumnName="iso_3", nullable=false, unique=false)
     */
    private $isoCountry;

    /**
     * @return IsoCountry
     */
    public function getIsoCountry()
    {
        return $this->isoCountry;
    }
}

/**
 * @Entity
 * @Table(name="iso_country")
 */
class Website
{

    /**
     * @Id
     * @Column(name="website_id", type="integer", nullable=false)
     * @var integer
     * @GeneratedValue
     */
    protected $id;

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

我收到错误消息Missing value for primary key id on namespace\Website。我不确定为什么我会在2.5原理上得到这个,而在2.3上却不能。

1 个答案:

答案 0 :(得分:0)

* @GeneratedValue实体添加Website值注释。