Probleme de relation manyTomany
Bonjour,
Je suis bloqué depuis plusieurs heures sur la création d'une relation manyTomany,
La creation de la table intermediaire par doctrine se fait bien, mais lorsque je fais une requete avec un var_dump de l'objet doctrine, mon navigateur plante comme si l'objet bouclé alors que j'ai que deux enregitrements en table, sur une autre entité pas de problème cela affiche correctement mes deux object sur la page mais elle n'a pas de relation.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
|
namespace Raptor\CmsrefBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Client
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="Raptor\CmsrefBundle\Entity\ClientRepository")
*/
class Client
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="societe", type="string", length=255)
*/
private $societe;
/**
* @var string
*
* @ORM\Column(name="tel", type="string", length=255)
*/
private $tel;
/**
* @ORM\ManyToMany(targetEntity="Activite", inversedBy="activites", cascade={"persist"})
* @ORM\JoinTable(name="client_activite",
* joinColumns={@ORM\JoinColumn(name="client_id", referencedColumnName="id")},
* inverseJoinColumns={@ORM\JoinColumn(name="activite_id", referencedColumnName="id")}
* )
**/
private $activites;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set societe
*
* @param string $societe
* @return Client
*/
public function setSociete($societe)
{
$this->societe = $societe;
return $this;
}
/**
* Get societe
*
* @return string
*/
public function getSociete()
{
return $this->societe;
}
/**
* Constructor
*/
public function __construct()
{
$this->activites = new \Doctrine\Common\Collections\ArrayCollection();
}
/**
* Set tel
*
* @param string $tel
* @return Client
*/
public function setTel($tel)
{
$this->tel = $tel;
return $this;
}
/**
* Get tel
*
* @return string
*/
public function getTel()
{
return $this->tel;
}
/**
* Add activites
*
* @param \Raptor\CmsrefBundle\Entity\Activite $activites
* @return Client
*/
public function addActivite(\Raptor\CmsrefBundle\Entity\Activite $activites)
{
$this->activites[] = $activites;
return $this;
}
/**
* Remove activites
*
* @param \Raptor\CmsrefBundle\Entity\Activite $activites
*/
public function removeActivite(\Raptor\CmsrefBundle\Entity\Activite $activites)
{
$this->activites->removeElement($activites);
}
/**
* Get activites
*
* @return \Doctrine\Common\Collections\Collection
*/
public function getActivites()
{
return $this->activites;
}
} |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
namespace Raptor\CmsrefBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Activite
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="Raptor\CmsrefBundle\Entity\ActiviteRepository")
*/
class Activite
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="nom", type="string", length=255)
*/
private $nom;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set nom
*
* @param string $nom
* @return Activite
*/
public function setNom($nom)
{
$this->nom = $nom;
return $this;
}
/**
* Get nom
*
* @return string
*/
public function getNom()
{
return $this->nom;
}
} |
Fonction de mon contrôleur
Code:
1 2 3 4
|
$em = $this->getDoctrine()->getManager();
$clients = $em->getRepository('RaptorCmsrefBundle:Client')->findAll();
var_dump($clients);die; |