Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > ORM > Doctrine
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/02/2012, 11h03   #1
Invité régulier
 
Homme Laurent
Développeur Web
Inscription : septembre 2010
Messages : 34
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur Web
Secteur : Boutique - Magasin

Informations forums :
Inscription : septembre 2010
Messages : 34
Points : 5
Points : 5
Par défaut Requêtes sur objets récursifs

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 :
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
rolintoucour est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h00.


 
 
 
 
Partenaires

Hébergement Web