Rails - невозможно импортировать данные из файла CSV
Я пытаюсь импортировать данные из файла CSV, я не хочу сохранять файл. Я нашел похожий вопрос здесь:Ruby on Rails - импорт данных из файла CSV
Однако, когда я пытаюсь использовать это решение, я получаю сообщение об ошибке.
Моя форма выглядит следующим образом:
Import a CSV file
<%= file_field_tag :file %>
<div class="actions form-group" id="button_text">
<p>
<%= button_tag(type: 'submit', class: "btn btn-primary button-submit") do %>
Submit
<% end %>
На новой странице отправка этой формы вызывает действие create, затем действие create вызывает строку:
Product.import(params[:file])
У меня есть следующий метод импорта в моей модели:
def self.import(myfile)
require 'csv'
csv_text = File.read(myfile)
csv = CSV.parse(csv_text, :headers => true)
csv.each do |row|
end
end
где 'myfile' - это params [: file].
Я знаю, что пока ничего не делаю с данными. Я получаю сообщение об ошибке со строкойcsv_text = File.read(myfile)
что: Нет такого файла или каталога @ rb_sysopen - X.csv
При поиске решения, которое я видел, используется .path. Если я изменю эту строку наcsv_text = File.read(myfile.path)
Я получаю сообщение об ошибке: неопределенный метод "путь" для "X.csv": строка
Кто-нибудь может помочь? Я чувствую, что должен быть очень близок к решению, но я просто продолжаю вертеться между этими двумя ошибками. Можно ли получить данные из CSV, не сохраняя их в первую очередь?
Спасибо за ваше время