Validación de datos HABTM en CakePHP
Aprende a validar datos de relaciones hbtm entre un modelo de un plugin con otro modelo de la aplicación principal!
En Nuts and Bolts of cakephp encuentro una ayuda para hacer validación de datos de modelos que están en una relación has and belongs to many (habtm). El problema viene cuando, como en mi caso, una de las partes de la habtm (la que quiero validar) no la puedes modificar por estar trabajando en un plugin.
Mi caso particular es para un nuevo plugin de mensajería pasa Ósmosis, en el cual una persona le manda un mensaje a muchas otras personas (Message habtm Member) y deseo validar que el mensaje se enviado al menos a una persona.
La vista es algo así:
echo $form->create("Message");
echo $form->input("subject");
echo $form->input("body");
echo $form->input("Member");
echo $form->end("Submit");
?>
Para lograrlo, he recurrido a la función beforeFilter del modelo Message:
if (empty($this->data[‘Member’][‘Member’])) {
$this->validationErrors[‘Member’][‘Member’] = ‘Select at least one’;
}
return true;
}
En beforeValidate utilicé $this->validationErrors['Member']['Member'] en vez de invalidate porque esa función no acepta dos niveles subíndices como lo necesito acá (no se cómo calificarlo: si error o característica)…
Bueno, ahí lo tienen, ya saben otra forma de validar datos de relaciones habtm.
Si deseas conocer más sobre Ósmosis, siguenos en twitter: @osmosislms
Recibe otros artículos como este automáticamente
Suscríbete vía RSS a aikon.com.ve ||
¿Qué es RSS?