Crear errores de validación desde el beforeSave
Posted by faemino | Filed under CakePHP
Situación: ¿Quiero generar errores de validación después de la ejecución del beforeValidation, por ejemplo en el beforeSave?
Sencillo, mediante el método invalidate generamos un error que se almacena en el array de errores del modelo y después desde el controlador podemos recuperar esos errores y actuar en función de ellos.
Modelo:
function beforeSave(){
if( condiciones_que_nos_parezcan){
$this->invalidate('nombre_del_error', 'texto del mensaje del error');
return false;
}
return parent::beforeSave
}
Controlador:
function add(){
if( $this->Modelo->save($this->data) ){
} else {
$errors = $this->Modelo->invalidFields();
if( array_key_exists('nombre_del_error', $errors) ){
die('Error especial')
} else {
die('Error al guardar');
}
}
}
July 24th, 2010 at 2:00 am
Hola,
Estoy empezando con CakePHP y esta web me está viniendo de perlas. Te agradezco mucho la dedicación que le has puesto al Blog, que desde hoy ya está junto con otros en mis favoritos.
Un saludo y enhorabuena por la web.
July 26th, 2010 at 10:44 am
Muchas gracias por tus palabras. Tengo el blog un poco olvidado, pero espero ir añadiendo en breve más cosas.
Saludos!