Есть три модели Item Gost ItemGosts
class Item < ActiveRecord::Base
has_many :item_gosts
has_many :gosts, through: :item_gosts
end
item_gost.rb
class ItemGost < ActiveRecord::Base
belongs_to :item
belongs_to :gost
end
gost.rb
class Gost < ActiveRecord::Base
has_many :item_gosts
has_many :items, through: :item_gosts
end
Item уже импортировал теперь осталось импортировать join table ItemGosts не пойму как потому что у Item может быть несколько Gosts
Есть csv файл следующего содержания
item_id,gosts_names
1,8734; 14-162-184-2150; 8758
2,8734; 14-161-184-2000; 8732
Где 1 колонка это Item.id а вторая Gost.name
Пытаюсь сделать что то типа
ItemGost.rb
def self.import(file)
CSV.foreach(file.path, headers: true) do |row|
item = Item.find_by_id(row["item_id"])
gosts = Gost.find_or_create_by(name: row["gosts_names"].split(;))
?????
item.save!
end
end
Но мозгов не хватает своих.