Class: ActiveRecord::ConnectionAdapters::ForeignKeyDefinition

Inherits:
Struct
  • Object
show all
Defined in:
lib/active_record/connection_adapters/abstract/schema_definitions.rb

Overview

:nodoc:

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#from_tableObject

Returns the value of attribute from_table

Returns:

  • (Object)

    the current value of from_table



123
124
125
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 123

def from_table
  @from_table
end

#optionsObject

Returns the value of attribute options

Returns:

  • (Object)

    the current value of options



123
124
125
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 123

def options
  @options
end

#to_tableObject

Returns the value of attribute to_table

Returns:

  • (Object)

    the current value of to_table



123
124
125
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 123

def to_table
  @to_table
end

Instance Method Details

#columnObject



128
129
130
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 128

def column
  options[:column]
end

#custom_primary_key?Boolean

Returns:

  • (Boolean)


148
149
150
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 148

def custom_primary_key?
  options[:primary_key] != default_primary_key
end

#deferrableObject



144
145
146
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 144

def deferrable
  options[:deferrable]
end

#defined_for?(to_table: nil, validate: nil, **options) ⇒ Boolean

Returns:

  • (Boolean)


161
162
163
164
165
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 161

def defined_for?(to_table: nil, validate: nil, **options)
  (to_table.nil? || to_table.to_s == self.to_table) &&
    (validate.nil? || validate == self.options.fetch(:validate, validate)) &&
    options.all? { |k, v| Array(self.options[k]).map(&:to_s) == Array(v).map(&:to_s) }
end

#export_name_on_schema_dump?Boolean

Returns:

  • (Boolean)


157
158
159
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 157

def export_name_on_schema_dump?
  !ActiveRecord::SchemaDumper.fk_ignore_pattern.match?(name) if name
end

#nameObject



124
125
126
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 124

def name
  options[:name]
end

#on_deleteObject



136
137
138
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 136

def on_delete
  options[:on_delete]
end

#on_updateObject



140
141
142
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 140

def on_update
  options[:on_update]
end

#primary_keyObject



132
133
134
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 132

def primary_key
  options[:primary_key] || default_primary_key
end

#validate?Boolean Also known as: validated?

Returns:

  • (Boolean)


152
153
154
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 152

def validate?
  options.fetch(:validate, true)
end