method
indexes
indexes(table, stream)
private
Hide source
# File activerecord/lib/active_record/schema_dumper.rb, line 184 def indexes(table, stream) if (indexes = @connection.indexes(table)).any? add_index_statements = indexes.map do |index| statement_parts = [ "add_index #{remove_prefix_and_suffix(index.table).inspect}", index.columns.inspect, "name: #{index.name.inspect}", ] statement_parts << 'unique: true' if index.unique index_lengths = (index.lengths || []).compact statement_parts << "length: #{Hash[index.columns.zip(index.lengths)].inspect}" if index_lengths.any? index_orders = index.orders || {} statement_parts << "order: #{index.orders.inspect}" if index_orders.any? statement_parts << "where: #{index.where.inspect}" if index.where statement_parts << "using: #{index.using.inspect}" if index.using statement_parts << "type: #{index.type.inspect}" if index.type " #{statement_parts.join(', ')}" end stream.puts add_index_statements.sort.join("\n") stream.puts end end