J'ai un problème avec Doctrine ODM. Lorsque je crée une entité avec une simple relation de EmbedMany à un autre document (par exemple un nickpage avec de nombreux commentaires que les documents intégrés), et je tente de dégager la collection, la collection existe toujours avec tous les éléments:Doctrine ODM - Effacer/mettre à jour/supprimer EmbedDocument relations
/** @Document */
class Nickpage
{
...
/** @EmbedMany(targetDocument="Comment") */
protected $comments = array();
...
public function clearComments()
{
$this->comments = array();
// or:
// $this->comments = new \Doctrine\Common\Collections\ArrayCollection();
return $this;
}
}
Quand je il suffit de charger une page de pseudo avec les commentaires associés, et j'appelle
$nickpage->clearComments();
$dm->persist($nickpage);
$dm->flush();
les commentaires existent toujours. Le même phénomène se produit lorsque je supprime certains éléments dans les commentaires $ ArrayCollection et je vide ...
Suis-je dans le mauvais sens de gérer de telles relations (ie utiliser ReferenceMany) ou est-ce la mauvaise façon de travailler avec les références? ?
Greetz Allemagne, Andi