Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

182
Views
Fecha de carga vacía al intentar actualizar - Yii2

Sucede que he usado la opción minDate para desactivar los días anteriores al actual para evitar seleccionar una fecha ya pasada. Esto me funciona perfectamente en el create pero en el update no me muestra la hora, solo aparece el widget vacio, aunque en la base de datos se nota que se registró la fecha. Quisiera saber que error puede estar pasando.

Normas

 [['inicio_clase', 'fin_clase'], 'default', 'value' => function () { return date(DATE_ISO8601); }], [['inicio_clase', 'fin_clase'], 'filter', 'filter' => 'strtotime', 'skipOnEmpty' => true], [['inicio_clase', 'fin_clase','seccion_id', 'materia_id', 'estado'], 'integer'], ['inicio_clase','compare','compareAttribute'=>'fin_clase','operator'=>'<','message'=>'La fecha de inicio debe ser menor que la fecha de finalización.'], ['fin_clase','compare','compareAttribute'=>'inicio_clase','operator'=>'>','message'=>'La fecha de fin no debe ser menor o igual que la fecha de inicio.'],

Forma

 <?php echo $form->field($model, 'fin_clase'( DateTimeWidget::class, [ 'phpDatetimeFormat' => 'yyyy/MM/dd HH:mm', 'clientOptions' => [ 'minDate' => new \yii\web\JsExpression('new Date()'), ] ] ) ?>
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Probablemente esté tratando de editar un registro con fin_clase establecido en la fecha anterior a la fecha actual. El DateTimeWidget está configurado para no permitir la fecha anterior al día actual, por lo que no podrá mostrar la fecha en el pasado, incluso si ese valor está almacenado en el modelo.

Por ejemplo, si hoy es 2021-10-12 y la fin_clase del registro está establecida en 2021-10-11, no se completará durante la edición.

Para evitar eso, debe configurar minDate para permitir el valor real almacenado en el modelo.

 'minDate' => $model->isNewRecord ? new \yii\web\JsExpression('new Date()') : new \yii\web\JsExpression("new Date({$model->fin_clase})"),

O es posible que desee permitir todas las fechas pasadas al editar el registro.

 'minDate' => $model->isNewRecord ? new \yii\web\JsExpression('new Date()') : false,
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!