jquery - ruby roo gem excel导入错误

标签 jquery ruby-on-rails ruby excel

我认为有一些非常简单的事情我不认为这里发生了错误。这是我上传文件的 jquery 代码:

import: function (e) {
  e.preventDefault();

  var formData = new FormData();
  jQuery.each($('#import_excel_file')[0].files, function(i, file) {
    formData.append('import_file', file, 'xls');
  });
  formData.append('fuel_type_id', $('#import_fuel_type').val());

  this.shipOff(formData);
},

shipOff: function (formData) {
  $.ajax({
    type: 'POST',
    url: App.Options.rootUrl + "/stations/stations/excel_import",
    data: formData,
    cache: false,
    contentType: false,
    processData: false,
    success: function (data) {
    console.log('successful upload', data);
    }
  });
}

然后在 Controller 中,我调用 import = Excel.new(xls_file.tempfile.to_path.to_s),我收到类似 TypeError (/var/folders/rd/58f3hjw10lv09q_8hsl0l7zn1mn1rf/T/RackMultipart20130909-36782-r1bv5n 不是 Excel 文件)

我在这里缺少什么?

最佳答案

您可以通过忽略 file_warning ( https://github.com/Empact/roo/issues/67 ) 来忽略文件扩展名检查

Roo::Excel.new(file.path, file_warning: :ignore)

我还建议将此逻辑从 Controller 移到导入器类中。

关于jquery - ruby roo gem excel导入错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18703476/

相关文章:

ruby - 用于通过包含 Ruby 中相同值的大数组对小数组进行排序的一行代码?

javascript - JQuery 检测字符串中的换行符

ruby-on-rails - 回形针 (3.0) 和 Rails (3.2) : f. file_field 在验证错误后丢失 'new' 操作的文件路径

ruby - 使用iron_worker_ruby gem 时铁 worker 内部的继承

ruby-on-rails - rspec_api_documentation - 如何有多个例子

ruby-on-rails - 在 Rails 中批量导入 CSV?

ruby - 为什么下面的代码在 ruby​​ 中有效?

Javascript 荧光灯闪烁效果

javascript - window.location.reload(true) 工作不一致

jquery - 如何使用 jquery 从字符串数组生成 UL Li 列表?