Method: ActiveRecord::ConnectionAdapters::SchemaStatements#index_name

Defined in:
activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb

#index_name(table_name, options) ⇒ Object

:nodoc:



992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
# File 'activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb', line 992

def index_name(table_name, options) # :nodoc:
  if Hash === options
    if options[:column]
      if options[:_uses_legacy_index_name]
        "index_#{table_name}_on_#{Array(options[:column]) * '_and_'}"
      else
        generate_index_name(table_name, options[:column])
      end
    elsif options[:name]
      options[:name]
    else
      raise ArgumentError, "You must specify the index name"
    end
  else
    index_name(table_name, index_name_options(options))
  end
end