Search code examples
ruby-on-railsdevisehaml

How to Show Error Messages Next to Field


I have a form with input fields/labels etc. How do I get the error message to show up next to the field? instead of clumped together at the top?

I am using devise, rails 3

I have this at the top of my form:

 = form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f|
- if resource.errors.any?
  #errorExplanation
    %h2
      = pluralize(resource.errors.count, "error")
      prevented this user from being saved:
    %ul
      - resource.errors.full_messages.each do |msg|
        %li
          = msg

Solution

  • You can use this

    - if @resource.errors[:field_name]
      ...
    

    Also useful link:

    http://guides.rubyonrails.org/active_record_validations.html#working-with-validation-errors