Merci c'est parfait !
j'ai migré de propel a doctrine cela ne fait que 4 jours que je
l'utilise et j'en suis extremement satisfait !

une derniere question,

malgrés les jointures que j'ai mis dans la requete, doctrine n'hydrate
pas les objet Personnel lié a id_professionnel et id_transporteur,
donc pour chaque élément récupéré il fait 2 requete, ai-je mal former
ma requete ?


REQUETE :

$q = Doctrine_Query::create()->from('ResidentAgenda ra');
$q->leftJoin('ra.Resident r');
$q->leftJoin('ra.Personnel p');
$q->leftJoin('ra.Personnel ip ON ra.id_professionnel =
ip.id_personnel');
$q->leftJoin('ra.Personnel it ON ra.id_transporteur =
it.id_personnel');



On 5 oct, 14:06, lionel chanson <[email protected]> wrote:
> Salut,
>
> Dans ta classe ResidentAgenda tu as les relations qui sont utilisées :
> tu dois avoir $this->hasOne('Personnel', array(....));
> Cela t'aidera à retrouver le getter pour les 2 autres
>
> Je pense que pour professionnel ou transporteur ce n'est pas
> getProfessionnel ou getTransporteur mais
> getPersonnel5() et getPersonnel6()
>
> Tu peux donner des alias dans ton schema pour utiliser
> getProfessionnel ou getTransporteur
> relations:
>   Personnel_5:
>     local: id_professionnel
>     foreign: id_personnel
>     type: one
>     alias: Professionnel
>
> ++
>
> Le 5 octobre 2009 13:35, Pierre PERRIER <[email protected]> a écrit :
>
>
>
>
>
> > Petite precision,
>
> > je travail avec Doctine 1.0 Symfony 1.2 sur base de donnée PostgreSQL
> > 8.3 avec php 5.3
>
> > On 5 oct, 13:33, "Pierre ( Pido )" <[email protected]> wrote:
> >> Schema :
>
> >> ResidentAgenda:
> >>   tableName: resident_agenda
> >>   columns:
> >>     id_resident_agenda:
> >>       type: integer(4)
> >>       primary: true
> >>       sequence: resident_agenda_id_resident_agenda
> >>     id_resident: integer(4)
> >>     id_personnel: integer(4)
> >>     id_professionnel: integer(4)
> >>     id_transporteur: integer(4)
> >>   relations:
> >>     Personnel:
> >>       local: id_personnel
> >>       foreign: id_personnel
> >>       type: one
> >>     Resident:
> >>       local: id_resident
> >>       foreign: id_resident
> >>       type: one
> >>     Personnel_5:
> >>       class: Personnel
> >>       local: id_professionnel
> >>       foreign: id_personnel
> >>       type: one
> >>     Personnel_6:
> >>       class: Personnel
> >>       local: id_transporteur
> >>       foreign: id_personnel
> >>       type: one
>
> >> le schema de la table Personnel n'a pas d'importance.
>
> >> $q = Doctrine_Query::create()->from('ResidentAgenda ra');
> >> $q->leftJoin('ra.Resident r');
> >> $q->leftJoin('ra.Personnel p');
> >> $q->leftJoin('ra.Personnel ip ON ra.id_professionnel =
> >> ip.id_personnel');
> >> $q->leftJoin('ra.Personnel it ON ra.id_transporteur =
> >> it.id_personnel');
>
> >> donc la a priori j'ai tout... sauf que je ne sais pas comment acceder
> >> a mon "Transporteur" ni "Professionnel"
> >> pour acceder a celui qui referencer par "id_personnel" aucun probleme
> >> $this->getPersonnel() cependant $this->getProfessionnel() ne
> >> fonctionne pas.
>
> >> Help !
>
> >> Merci d'avance.
>
> --
> Tu n'es pas content de ma réponse...
> Rendez-vous surhttp://iooooi.labrute.fr/
> Et crie VENGEANCE !!!!
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "Symfony-fr" 
de Google Groupes.
 Pour transmettre des messages à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour résilier votre abonnement à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour afficher d'autres options, visitez ce groupe à l'adresse 
http://groups.google.com/group/symfony-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---

Répondre à