所以我有两个具有ManyToONe关系的表,但是每当我创建操作时,都会出现此错误
关联字段的类型为“ AppBundle \ Entity \ Etat”的期望值 “ AppBundle \ Entity \ FicheFrais#$ id_etat”,改为使用“整数”。
在这里您可以找到我的实体 https://gist.github.com/Bakhshi-Faisal/bd459aab6ef0e8566c5fceb0789655af
在我的控制器中,我将其设置为简单
$ficheFrai->setIdEtat(1);
答案 0 :(得分:2)
您的实体 FicheFrais 与 Etat 实体相关。
因此,您需要为它们设置一个Etat实体而不是一个id。
所以不是:
$ficheFrai->setIdEtat(1);
您必须将 Etat 对象传递给设置器 像这样:
//Do that if you want to set the etat to your Etat with an id of 1
$etat = $em->getRepository(Etat::class)->find(1);
$ficheFrai->setIdEtat($etat);
那应该可行。
顺便说一句,由于您将 FicheFrais 设置为 Etat 实体 您应该重命名属性,getter和setter:
private $etat;
/**
* @return Etat
*/
public function getEtat()
{
return $this->etat;
}
/**
* @param Etat $etat
*/
public function setEtat($etat)
{
$this->etat = $etat;
}