Posted over 5 years ago. Visible to the public.

Always show all form errors during development

You've been there: A form cannot be submitted, but you don't see a validation error because the field at fault has no corresponding input field on the form. Because this is usually a bug, you insert debug information listing all errors into the form view. And once the bug is fixed, you forget to take out that debug information.

There is a better way. By copying the attached initializer into config/initializers, your form_for forms will always render a small box listing all form errors in the bottom right corner of the screen. This box is never shown in environments other than development.

Rails-XSS is required by default. So if your project doesn't support Rails-XSS just remove all .html_safe calls.

Example

Growing Rails Applications in Practice
Check out our new e-book:
Learn to structure large Ruby on Rails codebases with the tools you already know and love.

Author of this card:

Avatar
Henning Koch
Last edit:
over 1 year ago
by Dominik Schöler
Attachments:
example.png, form_for_with_development_errors.rb
Keywords:
validations
About this deck:
We are makandra and do test-driven, agile Ruby on Rails software development.
License for source code
Posted by Henning Koch to makandropedia