0

だから私は次のモデルを持っています: 画像:

class Image < ActiveRecord::Base
  has_many :product_images
  has_many :products, :through => :product_images
  attr_accessible :asset, :name, :description, :product_ids, :file_content_type, :is_boolean
  accepts_nested_attributes_for :product_images
  has_attached_file :asset
end

製品画像:

class ProductImage < ActiveRecord::Base
  belongs_to :product
  belongs_to :image
  attr_accessible :is_thumbnail
end

および製品:

class Product < ActiveRecord::Base
has_many :images, :through => :product_images
has_many :product_images
attr_accessible :name, :description, :thumbnail, :searchTerms, :group_ids, :upload_file_ids

終わり

画像フォームでやりたいことは、すべての製品のチェックボックスを表示してから、simple_fields_for を使用して調べた is_thumbnail 属性の別のチェックボックスを表示することですが、これは製品が既に追加されている場合にのみ表示されます。これを行う方法はありますか?

<%= f.simple_fields_for(:product_images) do |builder| %>
  <%= builder.input :is_thumbnail %>
  <%= builder.association :products, include_blank: false %>
<% end %>
4

1 に答える 1

0

私はあまり詳しくありませんsimple_fieldsが、インスタンスに基づいてフォーム入力を構築すると、そのインスタンスを「表現」することしかできません。

これは、すでに関連付けられているすべての製品を次の方法で印刷できることを意味します。

builder.association :products

ただし、データベース内のすべての製品を印刷する場合は、それらを取得し、ループしてフォームに表示する必要があります。

于 2013-06-27T07:35:25.047 に答える