【发布时间】:2018-11-27 18:12:12
【问题描述】:
我试图在 ActiveStorage 继续保存之前获取用户上传的文件的名称。表单使用form_with生成,如下图所示:
<%= 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 %>
我已尝试访问params[:upload][files] 并按照here 的描述在其上调用.original_filename,但我收到错误NoMethodError: undefined method `original_filename' for #<String:0x007fac77fd18c8>。
当我检查参数时,文件确实以字符串形式返回,那么如何获取文件名或如何让 original_filename 工作?
【问题讨论】:
标签: ruby-on-rails rails-activestorage ruby-on-rails-5.2