method
add_index_options
Ruby on Rails latest stable (v7.1.3.2)
-
0 notes -
Class: ActiveRecord::ConnectionAdapters::SchemaStatements
- 1.0.0
- 1.1.6
- 1.2.6
- 2.0.3
- 2.1.0
- 2.2.1
- 2.3.8
- 3.0.0
- 3.0.9
- 3.1.0 (0)
- 3.2.1 (0)
- 3.2.8 (0)
- 3.2.13 (0)
- 4.0.2 (0)
- 4.1.8 (0)
- 4.2.1 (0)
- 4.2.7 (0)
- 4.2.9 (0)
- 5.0.0.1 (0)
- 5.1.7 (0)
- 5.2.3 (0)
- 6.0.0 (0)
- 6.1.3.1 (0)
- 6.1.7.7 (0)
- 7.0.0 (0)
- 7.1.3.2 (0)
- 7.1.3.4 (0)
- What's this?
add_index_options(table_name, column_name, name: nil, if_not_exists: false, internal: false, **options)
public
Hide source
# File activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb, line 1436 def add_index_options(table_name, column_name, name: nil, if_not_exists: false, internal: false, **options) # :nodoc: options.assert_valid_keys(:unique, :length, :order, :opclass, :where, :type, :using, :comment, :algorithm, :include, :nulls_not_distinct) column_names = index_column_names(column_name) index_name = name&.to_s index_name ||= index_name(table_name, column_names) validate_index_length!(table_name, index_name, internal) index = IndexDefinition.new( table_name, index_name, options[:unique], column_names, lengths: options[:length] || {}, orders: options[:order] || {}, opclasses: options[:opclass] || {}, where: options[:where], type: options[:type], using: options[:using], include: options[:include], nulls_not_distinct: options[:nulls_not_distinct], comment: options[:comment] ) [index, index_algorithm(options[:algorithm]), if_not_exists] end