module Polyamorous::JoinAssociationExtensions

def build_constraint(klass, table, key, foreign_table, foreign_key)

def build_constraint(klass, table, key, foreign_table, foreign_key)
  if reflection.polymorphic?
    super(klass, table, key, foreign_table, foreign_key)
      .and(foreign_table[reflection.foreign_type].eq(reflection.klass.name))
  else
    super(klass, table, key, foreign_table, foreign_key)
  end
end