Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Customizing the show page in ActiveAdmin

The default show page in ActiveAdmin is a table with one attribute per row. For my backend, this would be fine, except that I want to hide fields such as id, created_at, updated_at.

Is is possible to do that in a way similar to the index page, i.e. by explicitly listing the desired attributes, while letting AtiveAdmin handle the layout?

The only example shown in the docs suggests that to customize the show page you have to completely take over and write a partial or an arbre construct.

Thanks!

like image 788
Giuseppe Avatar asked Sep 22 '11 06:09

Giuseppe


2 Answers

I think you're looking for attributes_table:

show do
  attributes_table :name, :content
end

See https://github.com/gregbell/active_admin/blob/master/lib/active_admin/views/pages/show.rb if you're curious.

(I completely removed my prior answer because it was basically useless!)

like image 99
Michael Hellein Avatar answered Nov 08 '22 09:11

Michael Hellein


show do

  attributes_table do
    row :profilepic do
      image_tag admin_user.profilepic.url, class: 'my_image_size'
    end
  row :name
  row :email
  row :adrs
  row :phone
  row :role
  row :salary
  row :parent_id
  row :joindate
end

end

like image 32
kajal Avatar answered Nov 08 '22 09:11

kajal