2

シンプルな Rails 3.2 アプリを作成しようとしています。

シンプルにするために、アプリには Product と Image の 2 つのモデルがあります。

製品には多くの画像が必要なので、ここに私のモデルがあります:

class Product < ActiveRecord::Base
  has_many :images, :class_name => 'Image'
end

class Image < ActiveRecord::Base
  belongs_to :product
  has_attached_file :image, :styles => { :normal => "300x300", :small => "70x70" }
end

私はactive_adminを使用しています。製品を作成するためのフォームは次のとおりです。

  <%= semantic_form_for [:admin, @product], :html => {:multipart => true} do |f| %>

    <%= f.inputs :title, :description, :price %>

    <%= f.semantic_fields_for :images do |f2| %>
        <%= f2.file_field :image %>
    <% end %>

    <%= f.buttons :commit %>
  <% end %>

フォームを送信すると、次の例外が発生します。

Image(#70365286921100) expected, got Array(#70365535770260)

{"utf8"=>"✓",
 "authenticity_token"=>"waFPhUIJPD90r5SRVmvvYBEcpZHgFJbM325wZDknWf8=",
 "product"=>{"title"=>"rfrfrf",
 "description"=>"rfrfr",
 "price"=>"200.99",
 "images"=>{"image"=>#<ActionDispatch::Http::UploadedFile:0x007ffe63d19e58 @original_filename="IMG_0097.JPG",
 @content_type="image/jpeg",
 @headers="Content-Disposition: form-data; name=\"product[images][image]\"; filename=\"IMG_0097.JPG\"\r\nContent-Type: image/jpeg\r\n",
 @tempfile=#<File:/var/folders/_j/s1n6_4551cxc765p1zm8w54r0000gq/T/RackMultipart20120503-2609-bwvbis>>}},
 "commit"=>"Create Product"}

なぜそれが起こっているのですか?誰でも私を助けてもらえますか?

前もって感謝します!

4

1 に答える 1