Como modificar as views geradas pelo gii

Consegui personalizar o index da minha aplicação, mas não consigo personalizar a view, preciso acertar os nomes da colunas em vermelho, colocar acentuação entre outras coisas e dos marcados em azul trocar os valores booleanos por sim ou não. A questão é como eu consigo personalizar isso. segue meu código.




<h1>Lição Aprendida</h1>

<h2><?php if($model->status ==1){

    echo "Você não pode atualizar esta lição aprendida no momento, pois ela encontra-se em avaliação";

} ?></h2>

<?php 

    $avaliacao_dados= Avaliacao::model()->findByAttributes(array('id_la'=>$model->id));

    

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

	'data'=>$model,

	'attributes'=>array(

		//'id',

		'nome',

		//'id_pai',

		'aprovacao',

		'avaliada',

		//'status',

		'influencia',

		'impacto',

		'fase_projeto',

		'versao',

		'area',

		//'id_setor',

		//'id_usuario',

		'data',

		//'file_name',

		//'file_type',

		//'anexo',

		'file_size',

		'descricao',

	),

));?>

       

<?php if($model->status == 2){

        echo "Avaliação";

	$nome_avaliador= User::model()->findByAttributes(array('id'=>$avaliacao_dados->id_usuario));

        $avaliacao_dados->id_usuario=$nome_avaliador->name;

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

	'data'=>$avaliacao_dados,

	'attributes'=>array(

		'data',

		'nota',

		'id_la',

		'id_usuario',

		'aprovacao',

		'comentarios',

	),

));

}





$this->widget('zii.widgets.CDetailView', [

    'data' => $model,

    'attributes' => [

//'id',

        'nome',

//'id_pai',

        [

            'name' => 'aprovacao',

            'label' => 'Foi Aprovado?',

            'value' => $model->aprovacao == 1 ? 'Sim' : 'Não',

        ],

        'avaliada',

//'status',

        'influencia',

        'impacto',

        'fase_projeto',

        'versao',

        'area',

        [

            'name' => 'id_setor',

            'label' => 'Setor',

            'value' => $model->id_setor

        ],

//'id_usuario',

        'data:date', // tipo do campo é date

        'data:datetime', // tipo do campo é datetime

        //Outra forma

        [

            'name' => 'data',

            'value' => date("d-m-Y", strtotime($model->data))

        ],

//'file_name',

//'file_type',

        'anexo:image', // tipo imagem

        'file_size',

        [

            'name' => 'descricao',

            'value' => nl2br($model->descricao)

        ],

    ],

]);

Valeu Aryel você salvou minha vida!

Meu caro,

No caso dos labels, você pode setar no método attributeLabels() do model. Desta forma, qualquer referência à uma propriedade do model será exibida com o label customizado, sem a necessidade de explicitar em cada view.

No caso dos atributos booleanos, você pode, no arquivo config/main.php, configurar o componente format, conforme exemplo abaixo:


        'format' => array(

            'booleanFormat' => array('Não', 'Sim'),

        ), 

Desta forma, você só precisa dizer qual o tipo do campo no widget, como por exemplo "aprovacao:boolean".

Espero ter ajudado.