Validaciones condicionales desde el modelo.

Validaciones condicionales desde el modelo.



Algunas veces es necesario aplicar validaciones condicionales que solo funcionen desde el modelo de datos pero al mismo tiempo se integren al formulario, en este ejemplo veremos cómo utilizar una validación condicional.


Ejemplo:

En este ejemplo queremos que el campo llamado 'ticket_causa_id' sea un campo requerido siempre y cuando la propiedad del modelo llamado 'ticket_estatus_id' sea igual a 4, en cualquier caso contrario no será requerido, esto aplica tanto del lado del servidor como del cliente.


    public function rules()
    {
        return [
            ....

            [['solucion','ticket_causa_id'],'required','when' => function($model){
                return $model->ticket_estatus_id == 4;   
            }, 'whenClient' => "function (attribute, value) {
                return $('#ticket-ticket_estatus_id').val() == '4';
                }"            
            ],
            .........
        ];
    }


    
Esta validación funcionará tanto en el modelo como en el formulario.

Referencias:

https://www.yiiframework.com/doc/guide/2.0/en/input-validation#conditional-validation



Comentarios

Aprende Yii2


Lo más Visto

Cómo instalar RBAC

Agregar select en encabezado de busqueda de un GridView

Creación de PDF con kartik\mpdf\Pdf

Instalar Netbeans 14 en Ubuntu 22 por consola

Migrando de bootstrap 3 a bootstrap 5

hostinger

ventana bienvenida