我正在从学说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="namespaceWebsite")
* @JoinColumn(name="website_id", referencedColumnName="base_website_id", nullable=false, unique=false)
* @var Website
*/
private $baseWebsite;
/**
* @var IsoCountry
* @ManyToOne(targetEntity="namespaceIsoCountry")
* @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 namespaceWebsite
。我不确定为什么我会在学说2.5上得到这个,而不是在2.3上。
添加 * @GeneratedValue
值注释到Website
实体。