У меня есть функция импорта, которая позволяет мне импортировать данные с CSV-файлом. Это работает, но я хочу, чтобы их user_id отнести к данным, которые они импортируютИдентификатор пользователя из текущего сеанса пользователя из импортирующей функции csv
Вот код, функция импорта:
def self.import(file)
CSV.foreach(file.path, headers: true) do |row|
product_hash = row.to_hash
Product.create!(product_hash)
end # end CSV.foreach
product.create от контроллера:
def create
@product = Product.new(product_params)
@product.set_user!(current_user)
@product.user_id = current_user.id
@product.save
respond_with(@product)
end
Это дает идентификатор пользователя данным, когда пользователь создает его вручную, но не тогда, когда он создает данные с помощью CSV пять через функцию импорта. Я хотел бы указать идентификатор пользователя, когда они импортируют данные в CSV, но я не знаю, как это сделать.
'current_user.id' единственный идентификатор, который вы хотите назначить каждый продукт на основе вашего' метода create', правильно? так что у всех продуктов будет такой же 'user_id' правильный? –
Да, если вы говорите, что человек A загружает файл со 100 продуктами, я хочу, чтобы эти 100 продуктов имели свой user_id (идентификатор от лица A). И если человек B делает то же самое, я хочу, чтобы его user_id был отнесен к продуктам (идентификатор от человека B) – dogg