Funcion En Cdetailview

Hola, nuevamente acudo a la comunidad con una pregunta. estoy tratando de ejecutar una funcion dentro de un array del CDetailView. estas son mis tablas

Quiero que cuando cree la estructura me muestre tambien el nombre y el apellido de la estructura. pero si aun no estan relacionadas, quiero que muestre en el lugar del nombre y el apellido algo como "No Asignado" entonces bien. en el array de mi CDetailView quiero hacer un llamado a una funcion, despues llamarla desde el modelo y que traiga, SI EXISTE LA RELACION el nombre pero, sino existe, que simplemente traiga "No Asignado" esto fue lo que intenté, pero mi pagina queda totalemente el blanco. no se que estoy haciendo mal.


<?php $this->widget('zii.widgets.CDetailView', array(

	'data'=>$model,

	'attributes'=>array(

		'id',

		'idpadre',


		array('label'=>'Nombre',

			  'type'=>'raw',

			  'value'=>$model->NombreMa ),


		'codigoonapre',

		'denominacion',

		'ubicacionfisica',

		'paginaweb',

		'telefono',

	),

)); ?>



Mi funcion en el model es esta:

si existe tblMaximaautoridadEstructuras[0].id es porque si existe una relacion, y quiero recorrer todas las relaciones hasta llegar a la tabla tbl_personas y mostrar el nombre, sino existe es porque aun no se han relacion entonces quiero que simplemente muestre "No Asignado"




public function getNombreMa()

	{

		if ($model->tblMaximaautoridadEstructuras[0].id === null ) {


			$varStatus = 'Sin Asignar';

		}else{


			$varStatus = $model->tblMaximaautoridadEstructuras[0]->idmaximaautoridad0->idpersona0->nombre;

		}

		return $this->varStatus

	}



alguna idea?

Supongo que la función getNombreMa esta en el modelo asi que no puedes usar la variable $model (a menos que tengas esa variable en el modelo),en su lugar debes usar $this para referirte al modelo.


public function getNombreMa()

        {

                if ($this->tblMaximaautoridadEstructuras[0].id === null ) {//<---Aqui cambio


                        $varStatus = 'Sin Asignar';

                }else{


                        $varStatus = $this->tblMaximaautoridadEstructuras[0]->idmaximaautoridad0->idpersona0->nombre;//<---Aqui cambio

                }

                return $this->varStatus

        }