exploiter les données d'une jointure

Bonjour à tous,

Je voulais savoir concrètement exploiter les données d’une jointure avec yii.

Supposons que j’ai deux tables personne(id_personne,nom,id_sexe) et sexe(id_sexe,nom_sexe).

je veux afficher une table comme


id_personne|nom_personne|nom_sexe


1 |Jean |masculin

2 |Albert |masculin

3 |Alice |féminin

4 |Clementine |féminin

5 |Fousseni |masculin

J’ai générée les crud pour mes tables comme yii le demande.

merci pour votre aide

Salut,

Premièrement l’utilisation d’une seconde table pour gérer les sexes n’a pas grand intérêt et ceci pour plusieurs raisons:

  • Les jointures SQL sont gourmandes et sont a éviter autant que possible

  • Dans le schéma que tu donnes, il ne semble pas nécessaire de travailler avec une table lookup (sexe) car cette dernière ne comporte pas d’éléments qui seront amener a changer fréquemment (me trompe-je?)

Ne pourrais-tu pas plutôt créer un champ enum dans ta base de données (enum(‘f’, ‘m’)), qui te permetterait de faire cela?

Sinon pour répondre a ta question je te renvoi a la documentation qui est assez complète à ce niveau:

Tu peux soit directement joindre la table avec CDbCriteria:

http://www.yiiframework.com/doc/api/1.1/CDbCriteria#join-detail

Ou alors utiliser les relations au sein d’un modèle Active Record:

http://www.yiiframework.com/doc/guide/1.1/fr/database.arr

A+

Merci ouhman …

comme tu le dit dans ce cas précis l’utilisation d’une seconde table n’est pas nécessaire.

C’était juste pour illustrer mon problème.

J’ai pu régler le problème en utilisant les relations dans le model (On y arrive difficilement sans bien comprendre comment ça marche). Je vais aussi explorer la 1ère piste que tu me donne.

Merci à tous et bon vent à Yii