Alex Rivera | Logout

How to remove a column from my Rails model?

Asked 2010-10-16T12:03:31.397
56

I need to remove a few columns from my rails model which i already created and have some row entries in that model. How to do it? Any links which has details for modifying the schema in rails ? I'm using rails version 3.

Edit
Report

1 Answer

45

If you know the columns you want to remove you can use the convention: Remove..From.. when naming your migrations. Additionally you can include the column names when running the migration command.

The form of the command:

rails g migration Remove..From.. col1:type col2:type col3:type

For example:

rails g migration RemoveProjectIDFromProjects project_id:string

generates the following migration file:

class RemoveProjectIdFromProjects < ActiveRecord::Migration
  def self.up
    remove_column :projects, :project_id
  end

  def self.down
    add_column :projects, :project_id, :string
  end
end
answered 2011-08-26T18:40:29.093

Your Answer