小编tro*_*y34的帖子

在 ActiveStorage 中保存之前获取文件名 - Rails 5.2.1

我试图在 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 %>
Run Code Online (Sandbox Code Playgroud)

我已尝试按照此处所述访问params[:upload][files]和调用.original_filename它,但出现错误。NoMethodError: undefined method `original_filename' for #<String:0x007fac77fd18c8>

当我检查参数时,该文件确实作为字符串返回,那么我如何获取文件名或如何original_filename开始工作?

ruby-on-rails rails-activestorage ruby-on-rails-5.2

3
推荐指数
2
解决办法
5129
查看次数