Herramientas de usuario

Herramientas del sitio


cursos:yii:views

CJuiTabs: Definir pestañas con widgets como contenido y con carga a través de AJAX

Utilizaremos el widget CJuiTabs. Para incluir cualquier contenido en una pestaña de CJuiTabs podemos utilizar ob_start y ob_get_clean para capturar el buffer de salida generado por cualquier otro elemento.

//Marcamos salida buffereada
ob_start();
$this->widget('zii.widgets.CDetailView', array(
	'data'=>$model,
	'attributes'=>array(
		'nombre',
		'apellidos',
		'email',
	),
));
 
$ficha=  ob_get_clean(); //Recogemos el buffer y lo limpiamos
 
$this->widget('zii.widgets.jui.CJuiTabs', array(
	'tabs'=>array(
		'Ficha'=>$ficha, //contenido del buffer
		//Entradas via petición AJAX cuando el usuario selecciona la pestaña
		'Entradas'=>array('ajax'=>$this->createUrl('autor/entradas',array('id'=>$model->id))),
	 ),
));

IMPORTANTE: La acción via AJAX (autor/entradas en el caso anterior) ha de hacer un renderPartial, para que no se repita el layout