我有问题,我是symfony 3.4的学生,我想在数据库中以其他表的1个元素的ID Relashionshiped插入数据库中的3个新项目,但是它被创建了,我需要帮助,因为它显示该错误。 setIdRevision()必须是AppBundle \ Entity \ RevisionInfo的实例,或者为null,给定的整数
那是我的代码
$chequeo = new RevisionChequeos();
$chequeo->setidRevision($id);
$chequeo->setOk($ok[$i]);
$chequeo->setNok($nok[$i]);
$chequeo->setSosp($sospechoso[$i]);
$chequeo->setNum($num[$i] );
$chequeo->setNombreChequeo($nombre1);
$chequeo->setNa($na[$i]);
$chequeo->setTexto($texto[$i] );
$entityManager->persist($chequeo);
$entityManager->flush();
$ id是值3的整数。
答案 0 :(得分:0)
您必须将对象而不是整数传递给方法。
简短的草稿:
$info = new RevisionInfo();
// .. do something and fill the info
$chequeo = new RevisionChequeos();
// pass the whole object, doctrine is handling the saving of the relation by itself
$chequeo->setidRevision($info);
$chequeo->setOk($ok[$i]);
$chequeo->setNok($nok[$i]);
$chequeo->setSosp($sospechoso[$i]);
$chequeo->setNum($num[$i] );
$chequeo->setNombreChequeo($nombre1);
$chequeo->setNa($na[$i]);
$chequeo->setTexto($texto[$i]);
$entityManager->persist($chequeo);
$entityManager->flush();
通常,您应该使用对象(涉及实体关系时)。 结果当然是该列中的整数,但可以处理理论。
您给该理论一个对象,它检查关系和列配置并保存正确的条目(数据库中的外键构造)。