5 Stimmen

rails 3, paperclip (& formtastic) - Löschen von Bildanhängen

Ich kann kein Beispiel finden, das in allen Bestandteilen vollständig ist. Ich habe Schwierigkeiten beim Löschen von Bildanhängen

  1. Klassen

      class Product
        has_many :product_images, :dependent => :destroy
        accepts_nested_attributes_for :product_images
      end
    
      class ProductImage
        belongs_to :product
        has_attached_file :image #(etc)
      end
  2. Siehe

      <%= semantic_form_for [:admin, @product], :html => {:multipart => true} do |f| %>
        <%= f.inputs "Images" do %>
          <%= f.semantic_fields_for :product_images do |product_image| %>
            <% unless product_image.object.new_record? %>
              <%= product_image.input :_destroy, :as => :boolean, 
                 :label => image_tag(product_image.object.image.url(:thumb)) %>
            <% else %>
              <%= product_image.input :image, :as => :file, :name => "Add Image" %>
            <% end %>
          <% end %>
        <% end %>
      <% end %>
  3. Controller

      class Admin::ProductsController < AdminsController
       def edit
         @product = Product.find_by_permalink(params[:id])
         3.times {@product.product_images.build} # added this to create add slots
       end
    
       def update
          @product = Product.find_by_permalink(params[:id])
    
          if @product.update_attributes(params[:product])
            flash[:notice] = "Successfully updated product."
            redirect_to [:admin, @product]
          else
            flash[:error] = @product.errors.full_messages
            render :action => 'edit'
          end
        end
      end

Sieht gut aus, aber es passiert buchstäblich nichts, wenn ich das Kästchen ankreuze. In der Anfrage sehe ich:

      "product"=>{"manufacturer_id"=>"2", "size"=>"", "cost"=>"5995.0", 
         "product_images_attributes"=>{"0"=>{"id"=>"2", "_destroy"=>"1"}}

Aber es wird nichts aktualisiert und das Produktbild wird nicht gespeichert.

Übersehe ich etwas Grundlegendes bei der Funktionsweise von "accepts_nested_attributes_for"?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X