Diferencia entre revisiones de «Validación»

De KumbiaPHP Framework Wiki
Línea 37: Línea 37:
 
Valida que ciertos atributos tengan un valor numérico antes de insertar ó actualizar.  
 
Valida que ciertos atributos tengan un valor numérico antes de insertar ó actualizar.  
  
<source lang=php line>
+
<source lang=php>
 
<?php
 
<?php
  

Revisión del 02:13 6 ago 2009

validates_presence_of

Cuando este método es llamado desde el constructor de una clase ActiveRecord, obliga a que se valide la presencia de los campos definidos en la lista. Los campos marcados como not_null en la tabla son automáticamente validados.

<?php
 class Clientes extends ActiveRecord {
   public function __construct(){
    $this->validates_presence_of("cedula");
   }
 }
7.?>

validates_length_of

Cuando este método es llamado desde el constructor de una clase ActiveRecord, obliga a que se valide la longitud de los campos definidos en la lista.

El parámetro minimum indica que se debe validar que el valor a insertar o actualizar no sea menor de ese tamaño. El parámetro maximum indica que el valor a insertar/actualizar no puede ser mayor al indicado. El parámetro too_short indica el mensaje personalizado que ActiveRecord mostrará en caso de que falle la validación cuando es menor y too_long cuando es muy largo.

class Clientes extends ActiveRecord {
 
  public function __construct(){
   $this->validates_length_of("nombre", "minumum: 15", "too_short: El nombre debe tener al menos 15 caracteres");
   $this->validates_length_of("nombre", "maximum: 40", "too_long: El nombre debe tener maximo 40 caracteres");
   $this->validates_length_of("nombre", "in: 15:40", 
      "too_short: El nombre debe tener al menos 15 caracteres",
      "too_long: El nombre debe tener maximo 40 caracteres"
   );
  }
}

validates_numericality_of

Valida que ciertos atributos tengan un valor numérico antes de insertar ó actualizar.

<?php

 class Productos extends ActiveRecord {
 
   public function __construct(){
    $this->validates_numericality_of("precio");
   }
 
 }
?>

validates_email_in

Valida que ciertos atributos tengan un formato de e-mail correcto antes de insertar o actualizar.

<?php
 class Clientes extends ActiveRecord {
 
   public function __construct(){
    $this->validates_email_in("correo");
   }
 
 }
?>

validates_uniqueness_of

Valida que ciertos atributos tengan un valor único antes de insertar o actualizar.

<?php
 class Clientes extends ActiveRecord {
 
   public function __construct(){
    $this->validates_uniqueness_of("cedula");
   }
 
 }
?>

validates_date_in

Valida que ciertos atributos tengan un formato de fecha acorde al indicado en config/config.ini antes de insertar o actualizar.

<?php
 class Registro extends ActiveRecord {
 
   public function __construct(){
         $this->validates_date_in("fecha_registro");
   }
 }
?>

validates_format_of

Valida que el campo tenga determinado formato según una expresión regular antes de insertar o actualizar.

<?php
 class Clientes extends ActiveRecord {
 
   public function __construct(){
    $this->validates_format_of("email", "^(+)@((?:[?a?z0?9]+\.)+[a?z]{2,})$");
   }
 
 }
?>