Saturday, March 22, 2014

Re: Ordering Error Message

The order of elements is decided from the order you place them in your .ctp, so CakePHP won't be able to guess this when they are generated in the array.

However, if you are grouping all the errors together, you can use FormHelper::error() [http://book.cakephp.org/2.0/en/core-libraries/helpers/form.html#FormHelper::error] to display errors for specific form elements,and you get to control what order those appear in, just like your form.

As an aside, you can also use the 'format' option [http://book.cakephp.org/2.0/en/core-libraries/helpers/form.html#options scroll near the bottom of this section] to control the order of field parts for a particular field. Just in case you want to hide the error field that you are displaying elsewhere.

Regards
Reuben Helms

On Sunday, 23 March 2014 12:28:03 UTC+10, advantage+ wrote:

Is there a way to set the order of error messages so they appear in the order as the form?

 

Example in the view I have:

 

<?php if (isset($errors) && !empty($errors)) echo $this->Element('errors/errors', array('errors' => $errors)); ?>

 

Element:

 

<ul class="errors">

       <?php foreach ($errors as $field => $error) : ?>

              <li><?php echo $error[0]; ?></li>

       <?php endforeach ?>

</ul>

 

But the form might have fields like firstname, lastname, email, password,

 

But if during testing none of the fields pass I would like to set the order of the errors to match the form field order.

Seems wrong to display lastname error, then email, then security , then firstname.

Would like to keep it consistent with the order of the form fields.

 

Thanks,

Dave

--
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.

No comments: