class BazaMigrations::Commands::RemoveColumn

Public Class Methods

new(table_name, column_name) click to toggle source
# File lib/baza_migrations/commands/remove_column.rb, line 2
def initialize(table_name, column_name)
  @table_name = table_name
  @column_name = column_name
end

Public Instance Methods

changed_rollback_sql() click to toggle source
# File lib/baza_migrations/commands/remove_column.rb, line 25
def changed_rollback_sql
  raise BazaMigrations::Errors::IrreversibleMigration
end
sql() click to toggle source
# File lib/baza_migrations/commands/remove_column.rb, line 7
def sql
  sqls = []
  db_type = db.opts.fetch(:type)

  if db_type.to_s.include?("sqlite3")
    sqls << proc do
      table = db.tables[@table_name]

      column = table.column(@column_name)
      column.drop
    end
  else
    sqls << "ALTER TABLE `#{@table_name}` DROP COLUMN `#{@column_name}`"
  end

  sqls
end