ActiveRecord::Migration::CommandRecorder
Migration Command Recorder
+ActiveRecord::Migration::CommandRecorder+ records commands done during a migration and knows how to reverse those commands. The CommandRecorder knows how to invert the following commands:
-
add_column
-
add_foreign_key
-
add_check_constraint
-
add_exclusion_constraint
-
add_unique_constraint
-
add_index
-
add_reference
-
add_timestamps
-
change_column_default (must supply a :from and :to option)
-
change_column_null
-
change_column_comment (must supply a :from and :to option)
-
change_table_comment (must supply a :from and :to option)
-
create_enum
-
create_join_table
-
create_table
-
disable_extension
-
drop_enum (must supply a list of values)
-
drop_join_table
-
drop_table (must supply a block)
-
enable_extension
-
remove_column (must supply a type)
-
remove_columns (must supply a :type option)
-
remove_foreign_key (must supply a second table)
-
remove_check_constraint
-
remove_exclusion_constraint
-
remove_unique_constraint
-
remove_index
-
remove_reference
-
remove_timestamps
-
rename_column
-
rename_enum (must supply a :to option)
-
rename_enum_value (must supply a :from and :to option)
-
rename_index
-
rename_table
Included modules
- ActiveRecord::Migration::CommandRecorder::StraightReversions
- ActiveRecord::Migration::JoinTable
Constants
ReversibleAndIrreversibleMethods = [\n:create_table, :create_join_table, :rename_table, :add_column, :remove_column,\n:rename_index, :rename_column, :add_index, :remove_index, :add_timestamps, :remove_timestamps,\n:change_column_default, :add_reference, :remove_reference, :transaction,\n:drop_join_table, :drop_table, :execute_block, :enable_extension, :disable_extension,\n:change_column, :execute, :remove_columns, :change_column_null,\n:add_foreign_key, :remove_foreign_key,\n:change_column_comment, :change_table_comment,\n:add_check_constraint, :remove_check_constraint,\n:add_exclusion_constraint, :remove_exclusion_constraint,\n:add_unique_constraint, :remove_unique_constraint,\n:create_enum, :drop_enum, :rename_enum, :add_enum_value, :rename_enum_value,\n]
Attributes
| [RW] | commands |
| [RW] | delegate |
| [RW] | reverting |
Files
- activerecord/lib/active_record/migration/command_recorder.rb