You may have noticed by now, that in Rails 2.0 changeset 7422, you can specify columns you want to add/remove in your migration by passing attribute:type pairs to the migration generator.
For example, lets assume that we need to add a column ‘role’ in users table(User model). In this case generate a migration like:
script/generate migration AddRoleToUser role:string
Output:
class AddRoleToUser < ActiveRecord::Migration def self.up add_column :users, :role, :string end def self.down remove_column :users, :role end end
Here AddRoleToUser plays the main role. ‘Add’ specifies the we want to add column(s) and ‘User’ separated by ‘To’ specifies the table.
Similarly, if we need to remove a column ‘role’ :
script/generate migration RemoveRoleFromUser role:string
Output:
class RemoveRoleFromUser < ActiveRecord::Migration def self.up remove_column :users, :role end def self.down add_column :users, :role, :string end end
Here RemoveRoleFromUser plays the main role. ‘Remove’ specifies the we want to remove column(s) and ‘User’ separated by ‘From’ specifies the table.
Isn’t it cool?
The auto_migration plugin already does this. But instead you edit one file (schema.rb). Good extraction though.
[...] Adding/Removing columns are now much easier [...]
Da nu Nahn
Подскажите шооблончег под WordPress 2.6.2, чтобы был похож на ваш webonrails.com.
Заранее благодарю)
Cool
thx dude.you saved my life!!Keep on the good work
Where is some screen spot support too..
http://madhukaudantha.blogspot.com/2010/01/ruby-on-rails-part-7-addingremoving.html
Good post
Thanx a lot
Hello,
I am a beginner in rails, and I have a small question: where do I need to add “script/generate migration AddFnameToUser fname:string” in terminal or where.I work on NetBeans on ActveAdmin and I need to add some extra columns.
Thx
LE: Never mind I figure it out :all I have to do is to put just generate not script/generate.But why ???
you have to give it in terminal as script/generate migration AddFnameToUser fname:string
you will get like this
create db/migrate/20120702084246_addFname_to_user.rb