我有两个实体,产品实体和具有多对一关系的avis一个产品可以具有许多avis,但是当我尝试保存评论时,字段produit_id保持为空。我已经很好地配置了关系,我认为控制器中有问题。
这是我的控制器添加avis动作:
public function addAction(Request $request){
$em =$this->getDoctrine()->getManager();
$produit=$em->getRepository('redeBundle:produit')->findAll();
$avis = new avis();
$avis->setCreatedAt(new \DateTime('now'));
$form = $this->createForm(new avisType(), $avis);
$form -> handleRequest($request);
if($form->isSubmitted() && $form->isValid()){
$avis->setProduit($produit);
$em->persist($avis);
$em->flush();
return $this->redirect($this->generateUrl('produit_page'));
}
$formView=$form->createView();
return $this->render('myBundle:avisAdd.html.twig',
array('form'=>$formView));
}
这是我的实体阿维斯
class avis {
/**
* @var produit
*
* @Assert\valid()
*
* @ORM\ManyToOne(targetEntity="redemaroc\redeBundle\Entity\produit",
cascade={"persist"})
* @ORM\JoinColumn(nullable=false)
*
*
*/
private $produit;
...
}
有人可以帮我解决这个问题吗?!
答案 0 :(得分:0)
可以使用其中一种解决方案
我假设 addAvis 是用于将给定avis添加到您的产品的方法。