所以我试图在Symfony2中与Doctrine建立一对一的关系,但我得到以下错误:
在呈现模板期间抛出异常无法解析类的列"id"的类型"实体IntoPeople DatabaseBundle Feedbackcycle")IntoPeopleDatabaseBundle: Feedbackcycle: index . html。修改第65行
我有两个实体,Feedbackcycle和CDP。在反馈循环我有:
/**
* @var IntoPeopleDatabaseBundleEntityCdp
*
* @ORMOneToOne(targetEntity="IntoPeopleDatabaseBundleEntityCdp", inversedBy="feedbackcycle")
* @ORMJoinColumns({
* @ORMJoinColumn(name="CDPId", referencedColumnName="Id")
* })
*/
private $cdp;
/**
* Set cdp
*
* @param IntoPeopleDatabaseBundleEntityCdp $cdp
*
* @return Feedbackcycle
*/
public function setCdp(IntoPeopleDatabaseBundleEntityCdp $cdp = null)
{
$this->cdp = $cdp;
return $this;
}
/**
* Get cdp
*
* @return IntoPeopleDatabaseBundleEntityCdp
*/
public function getCdp()
{
return $this->cdp;
}
在CDP中我有:
/**
* @ORMOneToOne(targetEntity="Feedbackcycle")
*/
protected $feedbackcycle;
/**
* Set feedbackcycle
*
* @param IntoPeopleDatabaseBundleEntityFeedbackcycle $feedbackcycle
*
* @return Cdp
*/
public function setFeedbackcycle(IntoPeopleDatabaseBundleEntityFeedbackcycle $feedbackcycle = null)
{
$this->feedbackcycle = $feedbackcycle;
return $this;
}
/**
* Get feedbackcycle
*
* @return IntoPeopleDatabaseBundleEntityFeedbackcycle
*/
public function getFeedbackcycle()
{
return $this->feedbackcycle;
}
在我的分支中,我可以这样做:
{{ feedbackcycle.cdp.id }}
这将工作,或者我也可以做feedbackcycle。name(任何属性)它将工作。但是当我做
{{ feedbackcycle.cdp.*ANOTHER ATTRIBUTE* }}
解决了,我忘了在CDP中写mapappedby:
/**
* @ORMOneToOne(targetEntity="Feedbackcycle", mappedBy="cdp")
*/
protected $feedbackcycle;