Class: ActiveRecord::ConnectionAdapters::ReferenceDefinition
- Inherits:
-
Object
- Object
- ActiveRecord::ConnectionAdapters::ReferenceDefinition
- Defined in:
- lib/active_record/connection_adapters/abstract/schema_definitions.rb
Overview
:nodoc:
Instance Method Summary collapse
- #add_to(table) ⇒ Object
-
#initialize(name, polymorphic: false, index: true, foreign_key: false, type: :bigint, **options) ⇒ ReferenceDefinition
constructor
A new instance of ReferenceDefinition.
Constructor Details
#initialize(name, polymorphic: false, index: true, foreign_key: false, type: :bigint, **options) ⇒ ReferenceDefinition
Returns a new instance of ReferenceDefinition.
77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 |
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 77 def initialize( name, polymorphic: false, index: true, foreign_key: false, type: :bigint, ** ) @name = name @polymorphic = polymorphic @index = index @foreign_key = foreign_key @type = type @options = if polymorphic && foreign_key raise ArgumentError, "Cannot add a foreign key to a polymorphic relation" end end |
Instance Method Details
#add_to(table) ⇒ Object
97 98 99 100 101 102 103 104 105 106 107 108 109 |
# File 'lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 97 def add_to(table) columns.each do || table.column(*) end if index table.index(column_names, ) end if foreign_key table.foreign_key(foreign_table_name, ) end end |