Nuestro grupo de expertos pasados muchos días de trabajo y de recopilar de información, encontramos la solución, queremos que te sea de utilidad en tu trabajo.
Solución:
Prueba esto:
protected function afterFind()
parent::afterFind();
$this->due_date=date('d F, Y', strtotime(str_replace("-", "", $this->due_date)));
protected function beforeSave()
if(parent::beforeSave())
$this->due_date=date('Y-m-d', strtotime(str_replace(",", "", $this->due_date)));
return TRUE;
else return false;
Agregue el código anterior a su modelo. Y debería funcionar.
Tuve un problema similar con las fechas europeas, formateadas como: ‘dd/mm/yyyy’, y esto es lo que uso:
En las reglas del modelo:
public function rules()
{
// NOTE: you should only define rules for those attributes that
// will receive user inputs.
return array(
array('date','date','format'=>Yii::app()->locale->getDateFormat('medium')),
porque el formato de configuración regional ‘medio’ se ajusta a mis necesidades de validación.
En la forma que uso:
labelEx($model,'date'); ?>
widget('zii.widgets.jui.CJuiDatePicker', array(
//'name'=>'date',
'model'=>$model,
'attribute'=>'date',
'language'=>Yii::app()->language=='es' ? 'es' : null,
'options'=>array(
'changeMonth'=>'true',
'changeYear'=>'true',
'yearRange' => '-99:+2',
'showAnim'=>'fold', // 'show' (the default), 'slideDown', 'fadeIn', 'fold'
'showOn'=>'button', // 'focus', 'button', 'both'
'dateFormat'=>'dd/mm/yy',
'value'=>date('dd/mm/yy'),
'theme'=>'redmond',
'buttonText'=>Yii::t('ui','Select form calendar'),
'buttonImage'=>Yii::app()->request->baseUrl.'/images/calendar.gif',
'buttonImageOnly'=>true,
),
'htmlOptions'=>array(
'style'=>'vertical-align:top',
'class'=>'span2',
),
));?>
error($model,'date'); ?>
Y la conversión de nuevo al formato MySQL, para guardar, comparar fechas…:
$date=strftime('%Y-%m-%d', strtotime(str_replace("/", "-", $this->date)));
Espero que esto ayude.
Sección de Reseñas y Valoraciones
Tienes la opción de añadir valor a nuestra información contribuyendo tu veteranía en las explicaciones.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)