instance method
remove_columns
Ruby on Rails 7.0.10
Since v2.2.3Signature
remove_columns(table_name, *column_names, type: nil, **options)
Removes the given columns from the table definition.
remove_columns(:suppliers, :qualification, :experience)
type and other column options can be passed to make migration reversible.
remove_columns(:suppliers, :qualification, :experience, type: :string, null: false)
Parameters
-
table_namereq -
column_namesrest -
typekey = nil -
optionskeyrest
Source
# File activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb, line 644
def remove_columns(table_name, *column_names, type: nil, **options)
if column_names.empty?
raise ArgumentError.new("You must specify at least one column name. Example: remove_columns(:people, :first_name)")
end
remove_column_fragments = remove_columns_for_alter(table_name, *column_names, type: type, **options)
execute "ALTER TABLE #{quote_table_name(table_name)} #{remove_column_fragments.join(', ')}"
end
Defined in activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb line 644
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveRecord::ConnectionAdapters::SchemaStatements