When you use multiple rules per field you can add 'last'=>true option to desired validation rule. It will force cake to stop validating other rules for current field if a rule with that option invalidates.
On 29. Jan, 12:56 h., Reny <[EMAIL PROTECTED]> wrote: > Hi all, > I have question about validation > > I have a 'email' text input field, I check in my model that this field > isn't empty and it's unique in my db. > > It's work but I'd like that when the first rule is not satisfied it > don't try to check the second rule. > > Now it check first rule (if blank it set "required"), so it check > second rule and it overwrite my first message and it display > "unique...". > myview: > <?php echo $form->input('email', array('error' => array( > 'required' => 'Please specify a valid email', > 'unique' => 'Please insert a unique email' > ))); ?> > > mymodel: > var $validate = array( > 'email' => array( > 'required' => VALID_NOT_EMPTY, > 'unique' => array( 'rule' => 'checkUnique', 'email')) > ); > > function checkUnique($data, $fieldName) { > $valid = false; > if(isset($fieldName[0]) && $this->hasField($fieldName[0])) { > $valid = $this->isUnique(array($fieldName[0] => $data)); > } > return $valid; > } > > thanks all!!! --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Cake PHP" group. To post to this group, send email to cake-php@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/cake-php?hl=en -~----------~----~----~----~------~----~------~--~---