Crazy Coders
Crazy Coders

Reputation: 133

Active admin multiple image upload with paperclip Rails 5

I use Active admin and I need upload photos for my project. How can I do it? My code:

class Project < ApplicationRecord
  has_many :images
  accepts_nested_attributes_for :images
end

class Image < ApplicationRecord
  belongs_to :project
  has_attached_file :image
  validates_attachment_presence :image
end


ActiveAdmin.register Project do

 permit_params :project_name , :project_location , :project_status , :project_area , :project_prices , :project_info , :project_description , :image , :image_file_name, :image_content_type, :image_file_size, :image_updated_at

  index do
    column :project_name
    column :project_description
    actions
  end

  form :html => { :enctype => "multipart/form-data" } do |f|
    f.inputs 'Project Info' do
      f.input :project_name
      f.input :project_description
    end

    f.inputs do
      f.has_many :images  do |p|
        p.input :image , as: :file
      end
    end

    f.actions
  end

end

With this code i can create Project without image. But i can't add any image to db. Waiting for help !!!

Upvotes: 0

Views: 645

Answers (1)

Crazy Coders
Crazy Coders

Reputation: 133

I solve the problem ! working code :

 permit_params :project_name , :project_location , :project_status , :project_area , :project_prices , :project_info , :project_description ,  images_attributes: [:image , :id , :_destroy]


  f.inputs do
      f.has_many :images , heading: false, allow_destroy: true do |ff|
        ff.input :image, required: true, as: :file
      end
    end

most important part that i miss is : images_attributes: [:image , :id , :_destroy] if you don't write this part fully , it won't work !

Upvotes: 2

Related Questions