File upload with Activeadmin Rails using paperclip

Sebastien picture Sebastien · Aug 16, 2011 · Viewed 29.6k times · Source

I use Active admin as my rails application backend. I want to make a file upload. How can I accomplish this functionality?

Answer

Sebastien picture Sebastien · Aug 17, 2011

I found a way to use Paperclip with Active Admin.

I added this code in my model "Event" :

has_attached_file :map, :styles => { :medium => "238x238>", 
                                   :thumb => "100x100>"
                                 }

And i did this for my admin model :

ActiveAdmin.register Event do
 form :html => { :enctype => "multipart/form-data" } do |f|
   f.inputs "Details" do
    f.input :continent
    f.input :event_type
    f.input :name
    f.input :title
    f.input :content
    f.input :date_start, :as => :date
    f.input :date_end, :as => :date
    f.input :place
    f.input :map, :as => :file
    f.input :image, :as => :file, :hint => f.template.image_tag(f.object.image.url(:medium))
    f.input :userfull_info
    f.input :price
    f.input :phone, :as => :phone
    f.input :website, :as => :url
  end
  f.buttons
 end
end

To use it on the index page, you have to use :

column "Image" do |event|
    link_to(image_tag(event.image.url(:thumb), :height => '100'), admin_event_path(event))
  end
  default_actions
end