因此,我有两个实体Sponsor和TypeSponsor,由ManyToOne关系所依赖,其中Sponsor是所有者。当我尝试获取参数中给定的发起人的SponsorType列表时,我得到以下信息:
可捕获的致命错误:传递给Doctrine \ ORM \ EntityRepository :: findBy()的参数1必须为数组类型,给定对象,在C:\ wamp \ www \ ppe2 \ src \ NP \ SponsorBundle \ Controller \ SponsorController.php中调用在第131行并定义
这是我的控制器的动作:
public function voirAction($id){
// On récupère le sponsor
$em = $this->getDoctrine()->getManager();
$sponsor = $em->getRepository('NPSponsorBundle:Sponsor')->find($id);
// Si le Sponsor n'existe pas
if ($sponsor == null) {
throw $this->createNotFoundException("Le sponsor d'id ".$id." n'existe pas.");
}
// On récupérere le contact
$sponsorContact = $em->getRepository('NPSponsorBundle:Contact')->findBySponsor($sponsor);
// On récupère la catégorie du sponsor
$categorie = $em->getRepository("NPSponsorBundle:TypeSponsor")->findBy($sponsor);
// Appel de la vue
return $this->render('NPSponsorBundle:Sponsor:voir.html.twig', array(
'sponsor' => $sponsor,
'sponsorContact' => $sponsorContact,
'categorie' => $categorie
));
}
这是我关于关系的代码:
/**
* @ORM\ManyToMany(targetEntity="NP\SponsorBundle\Entity\TypeSponsor", cascade={"persist"})
*/
private $typeSponsor;
任何的想法 ?
您无需每次都调用TypeSponsor存储库。您应该将一个添加GetTypeSponsor()
到您的实体并直接使用
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句