activerecord-importとelasticsearch-railsでメソッドが被る問題

どちらのgemもActiveRecordモデルにimportメソッドを生やそうとする。

いい感じに共存させる方法をググっていたら同じことをIssueで質問している人がいて、解決方法が書いてあったので助かった。config/application.rbactiverecord-import側のメソッド名を変更する。

require File.expand_path('../boot', __FILE__)
require 'rails/all'

# https://github.com/zdennis/activerecord-import/issues/149
require 'activerecord-import/base'

class ActiveRecord::Base
  class << self
    alias :bulk_insert :import
    remove_method :import
  end
end

Bundler.require(*Rails.groups)
....

参考文献