Criar Uma Ligação Para Um Registo De Tabela Relacionada.

Provavelmente é mais uma daquelas duvidas básicas mas já tentei várias maneiras e não acero com a sintaxe correcta.

Na listagem de uma tabela (_view), tenho a visualização de um campo relacionado correspondente a outra tabela, funciona tudo perfeito, até aqui - os relacionamentos estão correctos).

Pretendo que a apresentação desse campo relacionado tenha um ‘link’ que aponte para a visualização (view) desse registo. Talvez com a indicação do código seja mais fácil de perceber… assim,

<div class="view">

&lt;b&gt;&lt;?php echo CHtml::encode(&#036;data-&gt;getAttributeLabel('id')); ?&gt;:&lt;/b&gt;


&lt;?php echo CHtml::link(CHtml::encode(&#036;data-&gt;id), array('view', 'id'=&gt;&#036;data-&gt;id)); ?&gt;


&lt;br /&gt;





&lt;b&gt;&lt;?php echo CHtml::encode(&#036;data-&gt;getAttributeLabel('dataIncidente')); ?&gt;:&lt;/b&gt;


&lt;?php echo CHtml::encode(&#036;data-&gt;dataIncidente); ?&gt;


&lt;br /&gt;


    ... 


    &lt;b&gt;&lt;?php echo CHtml::encode(&#036;data-&gt;getAttributeLabel('incidenteId')); ?&gt;:&lt;/b&gt;


&lt;?php echo CHtml::encode(&#036;data-&gt;incidenteId); ?&gt;


&lt;br /&gt;


    


    &lt;b&gt;&lt;?php echo CHtml::encode(&#036;data-&gt;getAttributeLabel('Nome do visado')); ?&gt;:&lt;/b&gt;    


    &lt;?php echo CHtml::encode(&#036;data-&gt;incidente-&gt;nomeVisado); ?&gt;                          


&lt;br /&gt;

Notas: O campo ‘incidenteId’ é uma chave estrangeira com correspondência com a outra tabela (tblincidente), com chave primária ‘id’. O ‘nomeVisado’ vem da tblinicidente, através do relacionamento chamado ‘incidente’.

No fundo, à semelhança do que acontece para o primeiro campo ‘id’ - …CHtml::link(CHtml::encode($data->id), array(‘view’, ‘id’=>$data->id));)… - gostaria de criar um link para os campos ‘incidenteId’ e/ou ‘nomeVisado’ apontando à tabela incidente, de modo a poder visualizar o respectivo registo.

Falta-me este pormenor para dar por concluída esta primeira versão do meu, também, primeiro projecto em Yii.

Antecipadamente grato pela ajuda que possa surgir…

OBRIGADO

Solução encontrada, problema resolvido…

Depois de muita luta cheguei à solução para o meu problema… Fica aqui a transcrição do código utilizado, pois pode servir para outros exemplos semelhantes,


<b><?php echo CHtml::encode($data->getAttributeLabel(‘Nome do visado’)); ?>:</b>

<?php echo CHtml::link(CHtml::encode($data->incidente->nomeVisado),

       array('tblRegistoincidente/view', 'id'=&gt;&#036;data-&gt;incidente-&gt;id)); ?&gt;                          &lt;br /&gt;                                                                              

Bons projectos…

MASTERSTF3