Bonjour,

Je bloque sur l'utilisation de Doctrine, je ne trouve aucune référence à ce genre de problème sur mon ami google...

Je souhaite en fait créer des objets récursifs, c-a-d par exemple un objet SOFTWARE qui a pour champs un nom et un ID, et pouvoir faire des groupes de SOFTWARE à l'infini.
J'ai défini qu'il fallait :
  • dans la table SOFTWARE un champs ID, NOM et isAGroup (cette dernière permet de savoir si c'est un groupe ou pas, ça évite de requête pour vérifier...)
  • une table ASSOCIATION qui comprend ID_CONTIENT et ID_EST_CONTENU_DANS


J'ai créé des clés étrangères entre ces 2 tables et ensuite généré automatiquement le modèle par Doctrine. J'instancie ensuite un objet SOFTWARE_CONTIENT sur lequel j'applique la méthode ADD_ID_EST_CONTENU_DANS (qui a été générée automatiquement) et je sauvegarde, sauf que ça ne me renvoie aucune erreur et même ne fait rien.

Au niveau de ce qui a été généré, c'est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
  /**
     * @var Software
     *
     * @ManyToMany(targetEntity="Software", mappedBy="ID_EST_CONTENU_DANS")
     */
    private $ID_CONTIENT;
/* puis les fonctions getter et setter */
J'ai bien sûr essayé de jouer avec dans tous les sens, en essayant aussi de rajouter une jointure mais ça reste pareil.

Comme c'est un cas de récursivité et qu'il y a en fait 2 jointures sur lesquelles je me perd, je me demandais si ce cas avait été prévu simplement dans Doctrine ???

PS : j'ai modifié les noms des champs et des tables pour être plus explicite