Cdetailview With Dataprovider

Por tercera vez publico esto… A ver si no me lo borran, nuevamente… :D

Intentando realizar un modo de mostrar lo que trae un dataProvider del Controller Index, por ejemplo. Logré mostrar los datos de manera consecutiva en el CDetailView y ya no en el CListView.

La manera en que lo hice fue la siguiente:

En la vista index.php

Luego del breadcrumbs y de los label del menú de opciones:


<?php foreach ($dataProvider->getData() as $model): ?> //Con esto hacen que el dataProvider se seccione en models, es decir desde aquí pueden trabajar, por ejemplo con un echo $model->id

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

	'data'=>$model,

	'attributes'=>array(

		'campo1', //Escriben el nombre de sus campos

		'campo2',

		.....

		'campo(x)',

		array(

			'visible'=> empty($model->campo(x+1) ? false : true, //Si su campo es vacío y no LO quieren mostRar

			'name'=> 'campo(x+1)', //En caso de que el campo no sea vacío, se mostrará el label del campo

			'value'=> $model->campo(x+1), //A la vez, si no es vacío, se mostrará el valor del campo

		),

	),


)); ?>

<br> <!--Con esto hacen que el resultado no aparezca en una sola tabla, sino que se separen en pequeñas tablas-->

<?php endforeach ?>

Espero les pueda servir, y si ya lo sabían, me alegro por ustedes… :D

Si hay mejoras por favor, no las dejen para ustedes nada más.