2016-10-12 8 views
0

私は私の_form.html.erbファイルにこのコードを持っている:file_fieldアップロードボタン

<%= f.fields_for :request_attachments do |ra| %> 
    <div class="row westmontTextMuseo3" id="uploader"> 
     <div class="col-xs-12"> 
      <label class="btn btn-info"> Upload Files 
       <%= ra.file_field :request_attachment_file, :multiple => true, name: "request_attachments[file][]", :style => "display: none", type: "file" %> 
       <%= ra.hidden_field :file_cache %> 
      </label> 
     <%= link_to(ra.object.file.url.to_s.split('/')[-1], ra.object.file.url) %> 
     </div> 
    </div> 
<% end %> 

Upload Filesボタンが表示されますなぜ私が見ることができます。入れ子になっているフォームの範囲外にしたいと思うようですが、その方法はわかりません。

私の目標は、すでに添付されている各ファイルへのリンクを提供した後にボタンを1回置くことです。

ご協力いただきありがとうございます。

編集:他のコードが動作するかどうかを確認してください。

<%= f.fields_for :request_attachments do |ra| %> 
    <%= link_to(ra.object.file.url.to_s.split('/')[-1], ra.object.file.url) %> 
<% end %> 

<div class="row westmontTextMuseo3" id="uploader"> 
    <div class="col-xs-12"> 
    <label class="btn btn-info"> Upload Files 
     <%= @request.request_attachments.file_field :request_attachment_file, :multiple => true, name: "request_attachments[file][]", :style => "display: none", type: "file" %> 
     <%= @request.request_attachments.hidden_field :file_cache %> 
    </label> 
    </div> 
</div> 

しかし、これはundefined method file_field' for #<RequestAttachment...

+0

こんにちは。だから、あなたはこの仕事をしようとしましたか?フィールドをあなたが期待するところに動かそうとしましたか?その後何が起こったのですか? –

+1

'ra.object.file'が存在するかどうかを確認するために' if'文を試しましたが、ボタンではなくリンクが表示されます。私は '@requests.request_attachments.all.each do | x |を使って、link_toオブジェクトを外側に移動しようとしました。 ... 'が表示されますが、ボタンは各ファイルに対して複数回表示されます。 ...歓迎してくれてありがとう... 2年以上ここにいましたが、歓迎はいつも素敵です。 – Avir94

+0

:DIベース私の「歓迎」は、人がどれだけ多くのポイントを持っているのでしょうか?時々私は間違っていると思う;)まだ - 私はそれがあなたを幸せにしてうれしい! –

答えて

1

で失敗するこれは、私は属性が入れ子になったので、それが動作しないだろうと想定、それは仕事をした

<%= f.fields_for :request_attachments do |ra| %> 
    <div class="row"> 
    <div class="col-xs-12"> 
     <%= link_to(ra.object.file.url.to_s.split('/')[-1], ra.object.file.url) %> 
    </div> 
    </div> 
<% end %> 

<div class="row westmontTextMuseo3" id="uploader"> 
    <div class="col-xs-12"> 
    <label class="btn btn-info"> Upload Files 
     <%= file_field_tag :request_attachment_file, :multiple => true, name: "request_attachments[file][]", :style => "display: none", type: "file" %> 
     <%= hidden_field_tag :file_cache %> 
    </label> 
    </div> 
</div> 

を働いているように見えました。

関連する問題