You can use a single gem 'roo' for reading all types of file, instead of rubyXL, spreadsheet etc. multiple gems for different files(.xls, .xlsx).
You can check [here railscasts][1] for importing csv and excel import in ruby 1.9.3.
But this code snippet is not working with Ruby 2.0.
As [this episode][2] used gem 'roo' for reading files and gem 'roo' has been updated for rails 4.0.
So you need to do some code changes to work [it][3] with rails 4.0
Changes are:
- In Method: self.open_spreadsheet(file)
Csv.new(file.path, nil, :ignore) => Roo::Csv.new(file.path, nil, :ignore) Excel.new(file.path, nil, :ignore) => Roo::Excel.new(file.path, nil, :ignore) Excelx.new(file.path, nil, :ignore) => Roo::Excelx.new(file.path, nil, :ignore)
- Remove
require 'iconv'
from config/application.rb
For more about roo gem [click here][4]
[1]: http://railscasts.com/episodes/396-importing-csv-and-excel
[2]: http://railscasts.com/episodes/396-importing-csv-and-excel
[3]: http://railscasts.com/episodes/396-importing-csv-and-excel
[4]: http://rubydoc.info/gems/roo/1.12.2/frames