红宝石在轨道上

我正在尝试导入一个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_importafter_batch_import ,但是有没有办法替换实际的batch_import进程,以便它可以正确导入标记?

链接地址: http://www.djcxy.com/p/36017.html

上一篇: ruby on rails

下一篇: Tag index in rails: adding a second model with act as taggable