Bonjour à toutes et à tous.
Je reviens vers vous pour un nouveau problème.
Je vous met dans le context en vous expliquant un peu mon modèle.
j’ai deux table : “Promotion” et “Specialite” relié entre elle.
Voici les liens que j’ai dans mes modèles :
PROMOTION :
[HTML]
public function relations() {
return array(
'specialite'=>array(self::BELONGS_TO, 'Specialite', 'id_specialite'),
'filiere'=>array(self::HAS_ONE, 'Filiere', 'id_filiere',
'through'=>'specialite'),
);
}
[/HTML]
et SPECIALITE :
[HTML]
public function relations()
{
// NOTE: you may need to adjust the relation name and the related
// class name for the relations automatically generated below.
return array(
'filiere'=>array(self::BELONGS_TO, 'Filiere', 'id_filiere'),
'promotions'=>array(self::HAS_MANY, 'Promotion', 'id'),
);
}
[/HTML]
Ce que j’essaie de faire c’est d’afficher l’intituler de la spécialité pour chaque promotion.
Quand je fait ceci j’arrive à afficher mon intitulé :
[HTML]
$test = Promotion::model()->findByPk(60);
echo $test->specialite->intitule
[/HTML]
Le soucis est qu’ici je ne récupère qu’une seul occurence alors qu’il me les faut toutes.
Pour cela, je fait ceci :
[HTML]
$test = Promotion::model()->findAll();
foreach($test as $tt) {
echo ($tt->date_debut.'<br/>');
}
[/HTML]
Ici, toujours aucun prolème.
Maintenant, je souhaite afficher l’intitulé de la spécialité associé à ma promotion.
Voici comment je procède :
[HTML]
$test = Promotion::model()->findAll();
foreach($test as $tt) {
echo ($tt->date_debut.' : ');
echo ($tt->specialite->intitule.'<br/>');
}
[/HTML]
lorsque je fait cela, j’ai cette erreur :
[HTML]
Trying to get property of non-object
ligne 43 : echo ($tt->specialite->intitule.’<br/>’);
[/HTML]
si quelqu’un pouvoir me faire partager son savoir je lui en serais reconnaissant.
Amicalement
Arteckos