ruby-on-rails Rails:多文件加载缺少除一个文件以外的所有文件

pes8fvy9  于 2023-02-06  发布在  Ruby
关注(0)|答案(1)|浏览(134)

我的多重上载表单无法按预期工作:

# app/views/activeadmin/dashboard/_import_cves.html.erb
<%= form_tag admin_dashboard_import_cves_path, method: :post, multipart: true do %>
  <%= file_field_tag 'files', multiple: true %>
  <%= submit_tag 'Import CVEs' %>
<% end %>
# app/admin/dhasboard.rb
ActiveAdmin.register_page "Dashboard" do
  menu priority: 1, label: proc { I18n.t("active_admin.dashboard") }

  page_action :import_cves, method: :post do
    files.each do |f|
      logger.debug f
    end
    redirect_to admin_dashboard_path
  end
  content title: proc { I18n.t("active_admin.dashboard") } do
    columns do
      column do
        panel 'Upload CVEs' do
          ul do
            render 'activeadmin/dashboard/import_cves'
          end
        end
      end
    end
  end
end

所以...没有做什么特别的,还。我的表单显示,我选择多个文件(Chrome和Firefox的MacOS)和...错误:
未定义#〈ActionDispatch::Http::上传文件:0x0000000107415070@临时文件=#临时文件:/var/文件夹/6d/qr_wv8mx1zsgz0742b1j6p440000gn/T/机架多部件20230203 - 9446-xlwanr的方法"每个",@原始文件名="blc",@内容类型="应用程序/八位字节流",@标题="内容部署:表格数据;名称="文件";文件名="blc"\r\n内容类型:应用程序/八位字节流\r\n "〉
问题是,我确实选择了3个文件,它们至少在Rails tempfolder的文件系统中:

-rw-------    1 havoc  staff     0B  3 Feb 14:53 RackMultipart20230203-9446-bzjcc2
-rw-------    1 havoc  staff     0B  3 Feb 14:53 RackMultipart20230203-9446-k0zm3
-rw-------    1 havoc  staff     0B  3 Feb 14:53 RackMultipart20230203-9446-xlwanr

(PS:是的,这些测试文件是空的--刚刚触摸了其中的三个--但图片/其他文件的情况完全相同)
你知道这是怎么回事吗?
也许还有一点:我使用,正如你可能已经建议,ActiveAdmin为这次上传。但从我的Angular 来看,有一些错误的职位或东西?或参数变量?

plicqrtu

plicqrtu1#

# app/views/activeadmin/dashboard/_import_cves.html.erb
<%= form_tag admin_dashboard_import_cves_path, method: :post, multipart: true do %>
  <%= file_field_tag 'files[]', multiple: true %>
  <%= submit_tag 'Import CVEs' %>
<% end %>

... worked(added [] to the file_field_tag).我只是无法表达我有多失望,文档中没有这一点.在这里找到它:Rails file_field_tag with multiple files delivers random string to controller

相关问题