Mostrar Valor Por Defecto En Un Formulario

Buenas tardes a tod@s.

Creo que esta duda es bien facil de resolver, pero soy muy nuevo usando Yii y no veo la forma, ¿cómo se puede mostrar un valor por defecto en un formulario?

En mi caso tengo el siguiente formulario en el documento _form.php:


<div class="row">

<?php echo $form->labelEx($model,'reg_date'); ?>

<?php echo $form->textField($model,'reg_date'); ?>

<?php echo $form->error($model,'reg_date'); ?>

</div>

y quisiera hacer que se mostrara la fecha y la hora actual en el, es decir, el resultado del siguiente código:


<?php $model->reg_date=new CDbExpression('NOW()');?>

Estoy convencido de que el documento _form.php no es el lugar en el que hacerlo, pero como os digo, voy bastante perdido y no se donde ni como hacerlo.

Os agradecería mucho vuestra ayuda.

Muchas gracias.

Hola,

Sin duda hay varias formas, pero una de ella es definir valores por defecto luego de instanciar tu objeto. Asegúrate de verificar si el valor es empty o vas a reescribir el valor que el usuario defina:




$model = new Model();

if(empty($model->my_attribute) {

	$model->my_attribute = 'default value';

}



Mauricio.

No había visto lo de la hora. Ahí va:


<?php echo $form->textField($model,'reg_date', array('value'=>date('Y-m-d H:i:s'))); ?>

Saludos.

Buenas!! Igual necesito mostrar la fecha y hora en un formulario automaticamnte, de hecho lo tengo como lo plasmastes aca… el detalle es que me muestra la hora de Europa :( y no la de mi pais… Venezuela… Como resuelvo esto?'Gracias !!

Jejeje ya pude resolver colocando el Huso horario por defecto


 <?php date_default_timezone_set('America/Caracas');

             $fecha = Date('d-m-Y h:i:s'); ?>

       <?php echo 'Fecha: ', $form->textField($model,'f_prog', array('value'=>$fecha, 'readonly'=>'false')); ?>

Para el timezone lo normal sería poner la hora local de tu país de forma predeterminada.

Eso se hace en el php.ini, buscas la cadena timezone y le das el valor, por ejemplo:

date.timezone = "Europe/Madrid"

más zonas

Ahora si es solo para algún campo entonces esta ok.