2014-02-19 5 views
2

Добрый день StackOverflowпрочитать файл XLSX/XLS - Rails 4

У меня есть это в контроллере

def upload 
file_data = params[:data] 

#s = Roo::Excel.new(file_data.path) 
book = Spreadsheet.open file_data.path 

#--- continuous to read the file ---# 
end 

Проблема в том, что он может читать .xls файл на Spreadsheet драгоценный камень, но может «т читать .xlsx файла

В отличии от ювелирного Его может читать как .xls/.xlsx файлов, но пары file_data.path не работает функции Excel.new, показывает "is not an Excel file" ошибку

Я отправляю файл excel в file_field_tag ​​в форме на вид, конечно

Любые идеи для параметра file_data.path stackoverflow?

ответ

1

При использовании ЕГО камня читать xlsx файл, используйте Excelx класс

if File.extname(file_data.path) == ".xlsx" 
    s = Roo::Excelx.new(file_data.path) 
    else 
    s = Roo::Excel.new(file_data.path) 
    end 
+0

Не совсем проблема, на самом деле является то, что, когда я загрузить файл .xls, в функции Ей, то 'file_data.path' не распознает его как файл Excel, но, с тем же кодом 'file_data.path', он распознает его в функции Spreadsheet – nnn7867

Смежные вопросы