method

last_chain_scope

last_chain_scope(scope, table, reflection, owner, tracker, assoc_klass)
private

No documentation available.

# File activerecord/lib/active_record/associations/association_scope.rb, line 98
      def last_chain_scope(scope, table, reflection, owner, tracker, assoc_klass)
        join_keys = reflection.join_keys(assoc_klass)
        key = join_keys.key
        foreign_key = join_keys.foreign_key

        bind_val = bind scope, table.table_name, key.to_s, owner[foreign_key], tracker
        scope    = scope.where(table[key].eq(bind_val))

        if reflection.type
          value    = owner.class.base_class.name
          bind_val = bind scope, table.table_name, reflection.type, value, tracker
          scope    = scope.where(table[reflection.type].eq(bind_val))
        else
          scope
        end
      end