2011-11-02 15 views
16

Tengo un crud con clip y múltiples imágenes 'implemento active_admin y la actualización del producto está bien, pero no puedo cargar o editar las múltiples imágenes, el formulario que tengo es la siguiente:Paperclip + Active_admin + Rails 3.0.10 imágenes múltiples

form :html => { :multipart => true } do |f| 
    f.inputs "Details" do 
    f.input :name 
    f.input :created_at, :label => "Publish Product at" 
    f.input :category 
    end 

    f.inputs "Images" do 
    f.has_many :assets do |p| 
     p.input :asset, :as => :file, :input_html => { :multiple => true }, :label => "Image", :hint => p.object.asset.nil? ? p.template.content_tag(:span, "No Image Yet") : p.template.image_tag(p.object.asset.url(:thumb)) 
     p.input :_destroy, :as=>:boolean, :required => false, :label=>'Remove' 
    end 
    end 

    f.inputs "Content" do 
    f.input :description 
    end 
    f.buttons 
end 

y la ...

f.inputs "Images" do 
    f.has_many :assets do |p| 
     p.input :asset, :as => :file, :input_html => { :multiple => true }, :label => "Image", :hint => p.object.asset.nil? ? p.template.content_tag(:span, "No Image Yet") : p.template.image_tag(p.object.asset.url(:thumb)) 
     p.input :_destroy, :as=>:boolean, :required => false, :label=>'Remove' 
    end 
    end 

quiero subir imágenes, pero cuando creo un nuevo activo este tener una imagen predeterminada que falta y no adjuntar la imagen correcta, creo porque la ruta de las imágenes no es correcta para cargar. Mi modelo de activo es:

class Asset < ActiveRecord::Base 
    belongs_to :product 
    has_attached_file :asset, :styles => { :large => "340x330", :medium => "140x80>", :thumb => "70x70>" }, 
    :url => "/products/:id/:style/:basename.:extension", 
    :path => ":rails_root/public/products/:id/:style/:basename.:extension" 
end 

cómo puedo modificar mi formulario de activos para que funcione como yo quiero? ¡Gracias!

+1

debe mover su solución para una respuesta y seleccionar su propio responder. esto eliminará su pregunta de la lista de preguntas sin respuesta y también le dará otra insignia –

+0

Chris está listo ... – Stanmx

Respuesta

7

La solución

Hola, aquí está la solución, son la clave de cómo funciona los atributos anidados en Formtastic ...

form :html => { :multipart => true } do |f| 
    f.inputs "Product information" do 
    f.input :name 
    f.input :description 
    end 

    f.inputs "Product images" do 
    f.has_many :assets do |p| 
     p.input :asset, :as => :file, :label => "Image",:hint => p.object.asset.nil? ? p.template.content_tag(:span, "No Image Yet") : p.template.image_tag(p.object.asset.url(:thumb)) 
     p.input :_destroy, :as=>:boolean, :required => false, :label => 'Remove image' 
    end 
    end 

    f.inputs "Product details" do 
    f.input :category, :label => "Category", :hint => "Select one category" 
    f.input :height 
    f.input :width 
    f.input :depth 
    f.input :color, :label => "Color", :hint => "Select one color" 
    f.input :sku, :label => "SKU" 
    f.input :price 
    end 
    f.buttons 
end 
+0

hola, lo he intentado pero obtengo el "método indefinido' has_many 'para nil: NilClass " – Richlewis

+0

Me da un número incorrecto de argumentos ... –

+0

por favor revisa esto http://stackoverflow.com/questions/33081836/multiple-image-upload-in-active-admin-ror También intento pero no funciona – Harman

Cuestiones relacionadas