Class: ActiveRecord::ConnectionAdapters::PostgreSQL::AlterTable

Inherits:
AlterTable show all
Defined in:
activerecord/lib/active_record/connection_adapters/postgresql/schema_definitions.rb

Overview

Active Record PostgreSQL Adapter Alter Table

Instance Attribute Summary collapse

Attributes inherited from AlterTable

#adds, #check_constraint_adds, #check_constraint_drops, #constraint_drops, #foreign_key_adds, #foreign_key_drops

Instance Method Summary collapse

Methods inherited from AlterTable

#add_check_constraint, #add_column, #add_foreign_key, #drop_check_constraint, #drop_constraint, #drop_foreign_key, #name

Constructor Details

#initialize(td) ⇒ AlterTable

Returns a new instance of AlterTable.



366
367
368
369
370
371
# File 'activerecord/lib/active_record/connection_adapters/postgresql/schema_definitions.rb', line 366

def initialize(td)
  super
  @constraint_validations = []
  @exclusion_constraint_adds = []
  @unique_constraint_adds = []
end

Instance Attribute Details

#constraint_validationsObject (readonly)

Returns the value of attribute constraint_validations.



364
365
366
# File 'activerecord/lib/active_record/connection_adapters/postgresql/schema_definitions.rb', line 364

def constraint_validations
  @constraint_validations
end

#exclusion_constraint_addsObject (readonly)

Returns the value of attribute exclusion_constraint_adds.



364
365
366
# File 'activerecord/lib/active_record/connection_adapters/postgresql/schema_definitions.rb', line 364

def exclusion_constraint_adds
  @exclusion_constraint_adds
end

#unique_constraint_addsObject (readonly)

Returns the value of attribute unique_constraint_adds.



364
365
366
# File 'activerecord/lib/active_record/connection_adapters/postgresql/schema_definitions.rb', line 364

def unique_constraint_adds
  @unique_constraint_adds
end

Instance Method Details

#add_exclusion_constraint(expression, options) ⇒ Object



377
378
379
# File 'activerecord/lib/active_record/connection_adapters/postgresql/schema_definitions.rb', line 377

def add_exclusion_constraint(expression, options)
  @exclusion_constraint_adds << @td.new_exclusion_constraint_definition(expression, options)
end

#add_unique_constraint(column_name, options) ⇒ Object



381
382
383
# File 'activerecord/lib/active_record/connection_adapters/postgresql/schema_definitions.rb', line 381

def add_unique_constraint(column_name, options)
  @unique_constraint_adds << @td.new_unique_constraint_definition(column_name, options)
end

#validate_constraint(name) ⇒ Object



373
374
375
# File 'activerecord/lib/active_record/connection_adapters/postgresql/schema_definitions.rb', line 373

def validate_constraint(name)
  @constraint_validations << name
end