Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

184
Vistas
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 Respuestas
Responde la pregunta

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 Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda