Showing error messages in active admin for has many relationship table

activeadmin, ruby-on-rails

Solution

activeadmin 0.5.1 is available on github. it contains next line in changelog

"Add support for semantic errors #905 by @robdiciuccio"

here is pull request with this feature https://github.com/gregbell/active_admin/pull/905

example

form do |f|
  f.semantic_errors *f.object.errors.keys
  f.inputs
  f.inputs "Locations" do
    f.has_many :locations do |loc|
      loc.input :address
      loc.input :_destroy, :as => :boolean, :label => "Delete"
    end
  end
  f.buttons
end

to use it add to Gemfile

gem 'activeadmin', :git =>  "git://github.com/gregbell/active_admin.git", :tag => "v0.5.1"

Problem

I am facing an issue showing up the error messages in active admin. I get all the error messages displayed with the fields in the form. But in the code below, I need atleast one skill and maximum 5 skills to be added. Else need to throw an error message. I've added a validation in model as : validates :skills, :length => { :minimum => 1, :maximum => 5, :message => " should be atleast 1 and less than 5"} This validates perfectly, but no error message is displayed. Can anyone help me with the display of the error message. Following is the code : ``` form :html => { :enctype => "multipart/form-data" } do |f| f.inputs "User", :multipart => true do f.input :name f.input :email, :as => :email f.input :profile_name f.input :date_of_birth f.input :gender, :as => :select, :collection => Gender::GENDERS end f.inputs "Skills* ( minimum 1 & maximum 5 )" do f.has_many :skills do |p| if !p.object.nil? # show the destroy checkbox only if it is an existing appointment # else, there's already dynamic JS to add / remove new appointments p.input :_destroy, :as => :boolean, :label => "Destroy?", :hint => "Check this checkbox, if you want to delete this field." end p.input :description p.input :title end end end end ```

Original source