instance method indexes

Ruby on Rails 3.1.12

Since v3.1.12 Last seen in v3.1.12

Signature

indexes(table_name, name = nil)

Returns an array of indexes for the given table.

Parameters

table_name req
name opt = nil
Source
# File activerecord/lib/active_record/connection_adapters/mysql2_adapter.rb, line 451
      def indexes(table_name, name = nil)
        indexes = []
        current_index = nil
        result = execute("SHOW KEYS FROM #{quote_table_name(table_name)}", 'SCHEMA')
        result.each(:symbolize_keys => true, :as => :hash) do |row|
          if current_index != row[:Key_name]
            next if row[:Key_name] == PRIMARY # skip the primary key
            current_index = row[:Key_name]
            indexes << Mysql2IndexDefinition.new(row[:Table], row[:Key_name], row[:Non_unique] == 0, [], [])
          end

          indexes.last.columns << row[:Column_name]
          indexes.last.lengths << row[:Sub_part]
        end
        indexes
      end

Defined in activerecord/lib/active_record/connection_adapters/mysql2_adapter.rb line 451 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActiveRecord::ConnectionAdapters::Mysql2Adapter

Type at least 2 characters to search.

↑↓ navigate · open · esc close