Bonjour,

Énoncé du problème :

J'ai une entité : "Operation" (opération immobilières), en relation ManyToMany avec une entité User (FosUserBundle). Donc concrètement j'ai une liste d'utilisateur qui peuvent accéder à une Operation.
A l'intérieur de chaque opération j'ai des catégories (Entité Categorie), et pour chaque catégories j'ai une entité Mailing (OneToOne) qui à pour attribut le texte du mailing pour la catégorie, ainsi que la liste des utilisateurs qui recevront le mailing de la catégorie.

L'utilisateur à la possibilité côté backoffice de désigner via un formulaire quel utilisateur peut accéder une opération => et à ses catégories, et via un autre formulaire quel utilisateur recevra le mailing de tel ou tel catégorie. Tout cela fonctionne parfaitement.

Ma question : Comment faire pour que la liste des utilisateurs qui apparaissent dans le menu déroulant du formulaire du mailing corresponde aux utilisateurs de l'opération et non à l'ensemble des utilisateurs ? Ou, autre solution : comment faire pour que les utilisateurs sélectionnés par défaut dans le menu du formulaire de mailing correspondent aux utilisateur de l'opération ?

Pour tenter la deuxième solution, j'ai déjà essayé d'initialiser la collection des utilisateurs du mailing avec la collection des utilisateur de l'opération, mais ça ne fonctionne pas :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
public function __construct()
  {    
      $this->users = new \Doctrine\Common\Collections\ArrayCollection();
      $this->users = $this->categorie->getOperation()->getUsers(); 
  }
Auriez-vous quelques pistes, je pensais peut-être avec les évènements doctrine ?

Merci de votre aide.