Por estos casos es por lo que creo yo que es mucho mas facil si haces
todas tus validaciones en el modelo, que de hecho deberia ser donde
corresponde... Como hacer esto? Muy simple, valida utilzando reglas de
arrays:
var $validate = array(
'campo1' => array(
'rule' => 'nombreRegla';
'required' => true,
'allowEmpty' => false,
'on' => 'create', // o: 'update'
'message' => 'AQUI VA EL MENSAJE DE ERROR'
)
);
Este ejemplo es para solo un campo, llamado "campo1". Si quieres saber
que es cada parte del array, deberias ver el manual de 1.2:
http://tempdocs.cakephp.org/#TOC121845
Espero que te sirva mi consejo. De esta forma defines las validaciones
en cada modelo, y te despreocupas mientras los relaciones.
Saludos.
On 23 nov, 15:28, pepejose <[EMAIL PROTECTED]> wrote:
> hola, yo realizo las validaciones
>
> http://bakery.cakephp.org/articles/view/improved-advance-validation-w...
>
> vale, entonces los datos del formulario que quiero validar, si son del
> modelo sobre el que estoy operando pues bien, no se como validar datos
> de otros modelos....es decir...
>
> tengo 3 tablas users, sectors y sectors_users entonces en la accion
> add del controlador de users pues tengo un formulario, para validar
> los datos que se guardaran en ese modelo (users) no hay problema, pero
> por ejemplo el sector de ese usuario lo guardo en
> sectors_users (cada fila de la tabla tiene los campos user_id y
> sector_id) pero no se como validar que sector_id tenga valor y no este
> vacio....cree el modelo de sectors_users pero nada....
>
> <?php
> class SectorsUsers extends AppModel {
>
> var $name = 'SectorsUsers';
>
> var $validate;
>
> function loadValidation(){
> $this->validate = array(
> 'sector_id' => array(
> 'required' => array(
> 'method' => VALID_NOT_EMPTY,
> 'message' => 'Debe introducir un sector.',
> ),
> ),
>
> );
> }}
>
> ?>
>
> en la vista de la accion add de user hago
>
> <?php echo $error->allMessagesFor('User');?>
> <?php echo $error->allMessagesFor('SectorsUsers');?>
>
> y este es el select en donde se escoge el sector_id
>
> <div>
> <?php echo $form->labelTag('Sector/Sector', 'Sector');?>
> <?php echo $html->selectTag('Sector/Sector][',$sectors,
> $this->data['Sector']['Sector']['0'], array
>
> ('id'=>'sectors'));?>
> </div>
>
> GRACIAS
--~--~---------~--~----~------------~-------~--~----~
Has recibido este mensaje porque estás suscrito a Grupo "CakePHP-es" de Grupos
de Google.
Si quieres publicar en este grupo, envía un mensaje de correo
electrónico a [email protected]
Para anular la suscripción a este grupo, envía un mensaje a [EMAIL PROTECTED]
Para obtener más opciones, visita este grupo en
http://groups.google.com/group/CakePHP-es?hl=es.
-~----------~----~----~----~------~----~------~--~---