【Railsサンプルアプリ】scaffoldの作成とdb:migrateでテーブル作成

scaffoldでmodel とcontrollerとデータベースのテーブルを作ります。
User管理アプリを作ります。
概要
- Railsアプリの作成
- scaffoldの作成
- db:migrateの実行
- 動作確認
詳細
Railsアプリの作成
$ rails new UserManagement -BCMT --skip-coffee -d postgresql
create
create README.md
create Rakefile
create .ruby-version
create config.ru
create .gitignore
create Gemfile
〜〜省略〜〜
$ bundle lock --add-platform x64-mingw32 x86-mingw32 $ bundle Fetching gem metadata from https://rubygems.org/......... Using rake 12.3.2 Using concurrent-ruby 1.1.4 Using i18n 1.2.0 Using minitest 5.11.3 Using thread_safe 0.3.6 Using tzinfo 1.2.5 Using activesupport 5.2.2 Using builder 3.2.3 Using erubi 1.7.1 Using mini_portile2 2.4.0 Fetching nokogiri 1.9.1 Installing nokogiri 1.9.1 with native extensions
scaffoldの作成
scaffoldを作成します。テーブル名はUser、属性はname, mail, ageの3件。
$ rails generate scaffold User name:string mail:string age:integer
invoke active_record
create db/migrate/20181218143645_create_users.rb
create app/models/user.rb
invoke resource_route
route resources :users
invoke scaffold_controller
create app/controllers/users_controller.rb
invoke erb
create app/views/users
create app/views/users/index.html.erb
create app/views/users/edit.html.erb
create app/views/users/show.html.erb
create app/views/users/new.html.erb
create app/views/users/_form.html.erb
invoke helper
create app/helpers/users_helper.rb
invoke jbuilder
create app/views/users/index.json.jbuilder
create app/views/users/show.json.jbuilder
create app/views/users/_user.json.jbuilder
invoke assets
invoke js
create app/assets/javascripts/users.js
invoke scss
create app/assets/stylesheets/users.scss
invoke scss
create app/assets/stylesheets/scaffolds.scss

db:migrateの実行
$ rails db:migrate == 20181218143645 CreateUsers: migrating ====================================== -- create_table(:users) -> 0.0219s == 20181218143645 CreateUsers: migrated (0.0227s) =============================
テーブルが作られたことをpostgresに入って確認します。
$ psql -U rails_user rails_dev
rails_dev-# \dt
List of relations
Schema | Name | Type | Owner
--------+----------------------+-------+------------
public | ar_internal_metadata | table | rails_user
public | schema_migrations | table | rails_user
public | users | table | rails_user
(3 rows)
動作確認
初期画面

New Userをクリック。入力画面

Create Userをクリック。結果画面

Backをクリック。User一覧画面

2件Userを追加する。

このようにscaffoldを利用すると即席でCRUDアプリが作成できる。
「【Railsサンプルアプリ】scaffoldの作成とdb:migrateでテーブル作成」への2件のフィードバック