红宝石在轨道上
我正在尝试导入一个CSV模型,该模型包含几个可作为标签的行为属性。 标签是逗号分隔的,所以我可以编写一个基本的rake任务来导入一个像这样的CSV
CSV.foreach(filename, :headers => true) do |row|
Post.create!({
:title => row[0],
:description => row[1],
:body => row[2],
:location_list => row[3].split(','),
:topic_list => row[4].split(',')
})
end
但我正在尝试使用Active Admin进行此操作,该管理器已经为批量CSV导入创建了一个Gem - https://github.com/activeadmin-plugins/active_admin_import
gem正在处理映射数据库中的列的操作,但是由于在Post表中没有“location_list”或“topic_list”列,因此我的CSV与使用逗号分隔标签的最后2列不起作用,因为它们位于不同的表中并由宝石行为作为标签管理。
我发现有一些方法可以覆盖before_batch_import
和after_batch_import
,但是有没有办法替换实际的batch_import进程,以便它可以正确导入标记?
上一篇: ruby on rails
下一篇: Tag index in rails: adding a second model with act as taggable