Class ActiveRecord::Migration::CommandRecorder
In: lib/active_record/migration/command_recorder.rb
Parent: Object

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_index
  • add_timestamps
  • create_table
  • remove_timestamps
  • rename_column
  • rename_index
  • rename_table

Methods

inverse   new   record  

Attributes

commands  [RW] 
delegate  [RW] 

Public Class methods

Public Instance methods

Returns a list that represents commands that are the inverse of the commands stored in commands. For example:

  recorder.record(:rename_table, [:old, :new])
  recorder.inverse # => [:rename_table, [:new, :old]]

This method will raise an IrreversibleMigration exception if it cannot invert the commands.

record command. command should be a method name and arguments. For example:

  recorder.record(:method_name, [:arg1, :arg2])

[Validate]