CarrierWave (0.6.1) と Nested Form gem がインストールされています。FileUploader を持つ多くの添付ファイルを持つリソース モデルがあります。
ユーザーが 1 つのリソースで複数のファイルをアップロードできるネストされたフォームがあります。私は github (https://github.com/jnicklas/carrierwave) のセクションに従っています。残念ながら、再表示全体でアップロードを機能させる方法は 1:1 の比率のみです。
私が持っているコードは次のとおりです。
<%= nested_form_for @resource, :html=>{:multipart => true } do |f| %>
<p>
<%= f.label :title %>
<%= f.text_field :title %>
</p>
<%= f.fields_for :attachments, @attachment do |attachment_form| %>
<p>
<%= attachment_form.label :file %>
<%= attachment_form.file_field :file %>
<%= attachment_form.hidden_field :file_cache %>
<%= image_tag(attachment_form.file_url) if attachment_form.file? # DOESN'T WORK!!! %>
</p>
<%= attachment_form.link_to_remove "Remove this attachment" %>
<% end %>
<%= f.link_to_add "Add attachment", :attachments %>
<p><%= f.submit %></p>
<% end %>
すべてが機能し、file_cache 変数が attachment_form に適切に設定されますが、ユーザーにドキュメントの画像を表示するには、そこに次の行を追加する必要があります。
<%= image_tag(attachment_form.file_url) if attachment_form.file? %>
しかし、これには多くの問題があります。まず、実際の添付ファイルが必要なのに対し、attachment_form は form_builder を参照しています。第二に、添付ファイルはファイルについて何も知りません。
おそらく別のタイプのループメカニズムを使用する必要がありますが、私はRubyが初めてなので、助けていただければ幸いです。
皆さんありがとう!