Rolling back a migration in Ruby on Rails -
i working on first ruby on rails project, , have created "users" table app using "rails generate scaffold users" command.
now trying undo statement wish try rewrite classes involved class , table in database.
i saw scaffold statement created "def change" class in migration, , when try rollback migration there no function within migration. added "def down" method "drop_table :users" defined within it.
def down drop_table :users end however, when run "rake db:rollback", there no response in command prompt , table unchanged.
i not quite sure how undo migration rewrite table schema. can offer assistance please?
the whole migration looks following:
class createusers < activerecord::migration def change create_table :users |t| t.string :name t.string :password_digest t.string :email t.timestamps end end def down drop_table :users end end edit: fixed running db:drop , db:rollback clear schema. think there issue me having database open in program. closed , allowed database rolled back.
rails generate scaffold users doesn't change database, generate mvc code. can undo destroy scaffold command
rails destroy scaffold users if run rake db:migrate command can rollback rake db:rollback command. @ migration file, change method enough create or drop operation of tables. no down method needed, down method complement method of up method.
Comments
Post a Comment