Ruby on rails 在Rails 4中导入xls文件不工作Roo::Excel.new

Ruby on rails 在Rails 4中导入xls文件不工作Roo::Excel.new,ruby-on-rails,ruby,ruby-on-rails-4,import-from-excel,roo,Ruby On Rails,Ruby,Ruby On Rails 4,Import From Excel,Roo,我正在使用rails 4和以下代码导入.xls: def self.open_spreadsheet(file) case File.extname(file.original_filename) when ".csv" then Roo::Csv.new(file.path, nil, :ignore) when '.xls' then Roo::Excel.new(file.path, nil, :ignore) when ".xlsx" then Roo::Ex

我正在使用rails 4和以下代码导入.xls:

def self.open_spreadsheet(file)
  case File.extname(file.original_filename)
    when ".csv" then Roo::Csv.new(file.path, nil, :ignore)
    when '.xls' then Roo::Excel.new(file.path, nil, :ignore)
    when ".xlsx" then Roo::Excelx.new(file.path, nil, :ignore)
    else raise "Unknown file type: #{file.original_filename}"
  end
end
获取以下错误

Supplying `packed` or `file_warning` as separate arguments to
`Roo::Excel.new` is deprecated. Use an options hash
instead.Started GET "/members"
谁能告诉我如何导入.xls吗?

试试这个

def self.get_file_type(file)
  File.extname(file.original_filename).gsub('.','')
end

def self.open_spreadsheet(file)
  extension = get_file_type(file)
  if extension.in?(%w(csv xls xlsx))
    Roo::Spreadsheet.open(file.path, extension: extension)
  else
    raise "Unknown file type: #{file.original_filename}"
  end
end

@pkrawat1这是一篇比较老的帖子,但是它帮了我很多,所以谢谢你。我在它里面看到的一个错误,可能是操作失误的地方,
file\u path
应该是
file.path
。“一旦我改变了这一点,它就像一个符咒。”尼古拉斯79171谢谢你指出这一点。很高兴它帮助了你。