Apologies in advance because the formatting for this post is a little funky. The original goal was to have a numbered list, but that's not working out.
However, each migration builds on the previous so I hope it helps you understand the flow of setting up Rails migrations.
Create a new model Users
- rails g model Users :name :city
class CreateUsers < ActiveRecord::Migration[5.2]
def change
create_table :users do |t|
t.string :name
t.string :city
t.timestamps
end
end
end
Rename your Users Table to Accounts
- rails g migration rename_users_to_accounts
class RenameAccountsToTwitterAccounts < ActiveRecord::Migration[5.2]
def change
rename_table :users, :accounts
end
end
Add a new column to your Accounts table
- rails g migration AddEmailToAccounts email:string
class ChangeAccountsTable < ActiveRecord::Migration[5.0]
def change
add_column :accounts, :email, :string
end
end
Delete the Accounts table from your database
- rails g migration DropInstalls
class DropAccounts < ActiveRecord::Migration[5.2]
def change
drop_table :accounts
end
end
Undo your recent changes
- rails db:rollback