tu codigo fue puesto en un esqueleto de codigo nuevo y funcionó bien.
la causa de tu error puede ser debida a muchas cosas de tu parte. será dificil saberlo sin mayor información de tu parte.
para depurar en tu maquina:
1.usa chrome o firefox y lanza la herramienta de depuración, sea cual sea: firebug o control+shift+i en chrome. aqui se espera que aparezca un error de javascript. cual es ese error ?
2.limpia tu directorio de assets, y recarga tu pagina de datepicker, pruebas de nuevo.
3.si el error persiste tras limpieza de assets, abre la pagina de tu datepicker, dale ver codigo fuente y comprueba que puedes abrir todas las referencias a scripts que yii generó dentro. normalmente estos son recursos javascript que -deben- abrirse, todos, incluyendo js y css.
4.si todos los scripts y css abren perfectamente, y tu error persiste, verifica que no hayas manipulado el CJuiDatePicker en tu archivo config, de haberlo hecho encierra este setup en comentario y prueba de nuevo.
5.si todo esto falla, crea un nuevo esqueleto de codigo yii, en blanco, y sigue estos pasos, deberás ver el datepicker:
para crear un esqueleto en blanco de yii en d:/code/tudirectorio/ :
rutayiiframework/yiic.bat webapp d:/code/tudirectorio
en el directorio creado, dentro de protected/models/ crea un archivo ModeloPrueba.php con lo siguiente:
<?php class ModeloPrueba extends CFormModel {
public $evento_fecha_inicio='2012/06/08';
public function rules(){
return array(
array('evento_fecha_inicio','safe'),
);
}
public function attributeLabels(){
return array(
'evento_fecha_inicio'=>'Inicio del Evento',
);
}
}
?>
dentro de protected/views/site/ crea un archivo datepicker.php con lo siguiente:
<?php echo "Prueba Datepicker. model.evento_fecha_inicio=".$model->evento_fecha_inicio; ?>
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'datepicker-form',
)); ?>
<div class="row">
<?php echo $form->labelEx($model,'evento_fecha_inicio'); ?>
<?php
$this->widget('zii.widgets.jui.CJuiDatePicker',array(
'model'=>$model,
'attribute'=> 'evento_fecha_inicio',
'options'=> array(
'ampm' => true,
'showOn' => 'button',
'showAnim' => 'fold',
'timeOnly' => true,
),
));
?>
<?php echo $form->error($model,'evento_fecha_inicio'); ?>
</div>
<?php $this->endWidget(); ?>
finalmente, crea un simple action que llame la vista y muestre el datepicker: usa controllers/siteController.php , insertale lo siguiente:
public function actionTest(){
$model = new ModeloPrueba();
$this->render('datepicker',array('model'=>$model));
}
}
para probar tu codigo:
http://localhost/tuapp/index.php?site/test
y deberia aparecer un datepicker.