对不起,反应迟缓。 最近,我为gem wiki添加了一个新示例,它与您的问题非常相似。 它可以使用自定义的before_batch_import
钩master
分支
下一个例子来解决演示了如何动态地执行插入查询之前解决从作者的姓名和更改CSV值AUTHOR_ID值。
ActiveAdmin.register Post do
active_admin_import validate: true,
headers_rewrites: { :'Author name' => :author_id },
before_batch_import: ->(importer) {
authors_names = importer.values_at(:author_id)
# replacing author name with author id
authors = Author.where(name: authors_names).pluck(:name, :id)
options = Hash[*authors.flatten] # #{"Jane" => 2, "John" => 1}
importer.batch_replace(:author_id, options) #replacing "Jane" with 1, etc
}
end
太好了!就是这样。 – 2015-01-23 21:26:48