In Rails 2.0, use attribute pairs to create add and remove column migrations.
Posted by arjunghosh on February 14, 2008
We see a very useful feature in Rails 2.0 as defined in Changeset 7422, where now we can generate migration for adding and removing columns by directly passing attribute:type pairs to the migration generator.
Now for example, we need to add a column called ‘dept’ to students table where the model will be called ‘Student’.
Now previously we used something like:-
script/generate migration add_dept_to_student
Now in case of new better way of writing migration in Rails 2.0, we write it as follows:-
script/generate migration AddDeptToStudent dept:string
Here the migration name AddDeptToStudent holds the key. ‘Add’ specifies the we want to add column(s) and ‘Student’ separated by ‘To’ specifies the table.
Similarly, if we need to remove a column ‘dept’ :
script/generate migration RemoveDeptFromStudent dept:string
Similar to above, the migration name RemoveDeptFromStudent holds the key. ‘Remove’ specifies the we want to remove column(s) and ‘Student’ separated by ‘From’ specifies the table.