ActiveStorage kaydetmeden önce dosya adını alma - 5.2.1 Raylar

oy
0

Ben ActiveStorage kaydetmek için gitmeden önce bir kullanıcı tarafından yüklenen dosyanın adını almak için çalışıyorum. Formu kullanılarak oluşturulur form_withve aşağıda gösterilmiştir:

<%= form_with model: upload do |form| %>
  <div class=>
    <%= form.file_field :files, multiple: true, direct_upload: true, required: true %>
    <%= form.label :files, '', class: 'icon ion-ios-cloud-upload' do %>
      <span>click the icon to select files</span>
    <% end %>

    <div class=actions>
      <%= form.submit Upload, class: btn btn-primary %>
    </div>
 </div>
<% end %>

Ben erişme denedim params[:upload][files]ve arama .original_filenameanlatıldığı gibi üzerine burada ama hata alıyorum NoMethodError: undefined method `original_filename' for #<String:0x007fac77fd18c8>.

Dosya ben params incelemek bir dize olarak geri gelir, bu yüzden dosya adı alabilirim veya nasıl alabilirim nasıl original_filenameişe?

Oluştur 27/11/2018 saat 18:12
kaynak kullanıcı
Diğer dillerde...                            


2 cevaplar

oy
0

Sonunda yaparak dosya adını almak başardı file.blob.filenamedosya ekli verildikten sonra.

Cevap 27/11/2018 saat 19:48
kaynak kullanıcı

oy
0

Sen eklemem gerekiyor multipart: trueformunuzda.

https://guides.rubyonrails.org/form_helpers.html#uploading-files

diğer şey birden fazla dosya varsa birden dosya gerekecek olmasıdır.

params[:upload][files].each do |file|
  file.original_filename
end
Cevap 27/11/2018 saat 19:16
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more