見出し画像

便利な『Rails』Scaffoldの使い方

scaffoldとは

railsアプリケーションの開発する際には、モデルやコントローラー、ビューを作っていき、さらに必要なルーティングを作成していく必要がある。railsにはこれらの作業をまとめて行って、簡単にアプリケーションの雛形を作ってくれる機能がscaffold。scaffoldを使うことで素早くrailsアプリケーションを作ることができる。

使ってみる。

ターミナルで、下記のようにコマンドを実行。

$ rails new sample

$ cd sample

$ rails g scaffold モデル名 カラム名1:データ型1 カラム名2:データ型2 …


例え

$ rails g scaffold user name:string age:integer

これで、アプリケーションを作成するテンプレートファイルが下記のように作成されます。


マイグレーション・モデル

次の2ファイルがデータベースのテーブルやカラムを変更することの出来るマイグレーションファイルとUserモデルのファル。
・db/migrate/201639344_create_users.rb
・app/models/users.rb


コントローラーとルーティング

コントローラファイル
・app/controllers/users_controller.rb

作成されたusers_controller.rbを見てみると、7つのアクションが自動的に定義されているのが分かる。これらのアクションを呼び出してデータの参照、作成、変更、削除を行うことができる。

また、ルーティングの設定ファイルも自動更新される。

以下のファイルの中を見てみる。

・config/routes.rb

ファイルの中に

 resources :users

という記述が追加されている。

この記述をすることでユーザー管理機能にアクセスすることができるようになる。

ビュー

コントローラーで定義されたアクションに対応するビューファイルが全て作成されている。

テーブルの作成

先ほど実行したscaffoldでアプリケーションの雛形は完成したが、最後にデータベースのテーブルを作成する必要がある。
テーブルを作成にはマイグレーションファイルを使用する。
scaffoldで自動生成されたものがある。
次のコマンドを実行してテーブルを作成する。

$ rake db:migrate

この記事が気に入ったらサポートをしてみませんか?