Diferencia entre revisiones de «Validación»
(No se muestran 8 ediciones intermedias de 2 usuarios) | |||
Línea 6: | Línea 6: | ||
<?php | <?php | ||
class Clientes extends ActiveRecord { | class Clientes extends ActiveRecord { | ||
− | + | protected function initialize(){ | |
$this->validates_presence_of("cedula"); | $this->validates_presence_of("cedula"); | ||
} | } | ||
Línea 22: | Línea 22: | ||
class Clientes extends ActiveRecord { | class Clientes extends ActiveRecord { | ||
− | + | protected function initialize(){ | |
$this->validates_length_of("nombre", "minumum: 15", "too_short: El nombre debe tener al menos 15 caracteres"); | $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", "maximum: 40", "too_long: El nombre debe tener maximo 40 caracteres"); | ||
Línea 42: | Línea 42: | ||
class Productos extends ActiveRecord { | class Productos extends ActiveRecord { | ||
− | + | protected function initialize{ | |
$this->validates_numericality_of("precio"); | $this->validates_numericality_of("precio"); | ||
} | } | ||
Línea 58: | Línea 58: | ||
class Clientes extends ActiveRecord { | class Clientes extends ActiveRecord { | ||
− | + | protected function initialize(){ | |
$this->validates_email_in("correo"); | $this->validates_email_in("correo"); | ||
} | } | ||
Línea 70: | Línea 70: | ||
Valida que ciertos atributos tengan un valor único antes de insertar o actualizar. | Valida que ciertos atributos tengan un valor único antes de insertar o actualizar. | ||
− | <source lang=php | + | <source lang=php> |
<?php | <?php | ||
class Clientes extends ActiveRecord { | class Clientes extends ActiveRecord { | ||
− | + | protected function initialize{ | |
$this->validates_uniqueness_of("cedula"); | $this->validates_uniqueness_of("cedula"); | ||
} | } | ||
Línea 90: | Línea 90: | ||
class Registro extends ActiveRecord { | class Registro extends ActiveRecord { | ||
− | + | protected function initialize(){ | |
$this->validates_date_in("fecha_registro"); | $this->validates_date_in("fecha_registro"); | ||
} | } | ||
Línea 105: | Línea 105: | ||
class Clientes extends ActiveRecord { | class Clientes extends ActiveRecord { | ||
− | + | protected function initialize(){ | |
$this->validates_format_of("email", "^(+)@((?:[?a?z0?9]+\.)+[a?z]{2,})$"); | $this->validates_format_of("email", "^(+)@((?:[?a?z0?9]+\.)+[a?z]{2,})$"); | ||
} | } |
Revisión actual del 21:19 1 may 2017
Sumario
validates_presence_of[editar]
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 {
protected function initialize(){
$this->validates_presence_of("cedula");
}
}
7.?>
validates_length_of[editar]
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 {
protected function initialize(){
$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[editar]
Valida que ciertos atributos tengan un valor numérico antes de insertar ó actualizar.
<?php
class Productos extends ActiveRecord {
protected function initialize{
$this->validates_numericality_of("precio");
}
}
?>
validates_email_in[editar]
Valida que ciertos atributos tengan un formato de e-mail correcto antes de insertar o actualizar.
<?php
class Clientes extends ActiveRecord {
protected function initialize(){
$this->validates_email_in("correo");
}
}
?>
validates_uniqueness_of[editar]
Valida que ciertos atributos tengan un valor único antes de insertar o actualizar.
<?php
class Clientes extends ActiveRecord {
protected function initialize{
$this->validates_uniqueness_of("cedula");
}
}
?>
validates_date_in[editar]
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 {
protected function initialize(){
$this->validates_date_in("fecha_registro");
}
}
?>
validates_format_of[editar]
Valida que el campo tenga determinado formato según una expresión regular antes de insertar o actualizar.
<?php
class Clientes extends ActiveRecord {
protected function initialize(){
$this->validates_format_of("email", "^(+)@((?:[?a?z0?9]+\.)+[a?z]{2,})$");
}
}
?>