Я пытаюсь импортировать CSV с сотрудниками. Я требую «CSV» на контроллере. Однако я получаю эту ошибку:
undefined method `path' for #<ActionController::Parameters:0x00007fad5592b328>
Вот мои маршруты
resources :employees do
resources :contrats, only: [:new, :create, :edit, :update]
end
resources :employees do
resources :contratcdds, only: [:new, :create, :edit, :update]
end
resources :employees do
collection { post :import }
end
Вот метод импорта в контроллере
require 'csv'
def import
Employee.import(params)[:file]
redirect_to root_url, notice: "Import réussi"
end
Вот что есть в моих моделях. Я думаю, что проблема возникла отсюда.
def self.import(file)
CSV.foreach(file.path, headers:true) do |row|
Employee.create! row.to_hash
end
end
А вот мое мнение:
<%= form_tag import_employees_path, multipart: true do %>
<%= file_field_tag :file %>
<%= submit_tag "Import CSV", class: "btn-medium" %>
<% end %>
Я действительно заблудился, некоторые могут мне помочь?
С уважением.