Fresopiya
場所にもお金にも時間にも、何にも縛られない自由な状態になったら一体人間は何をしてどこに向かうのか。 まずはとにかく自由を目指すエンジニアのブログです。

哲学とプログラミングとブログがメインになるかと。
Ruby on Rails

【Ruby on Rails】Scaffolding機能とは?CRUD処理を実装したアプリの開発

どうも、とがみんです。この記事では、基本的な機能を備えたWebアプリをサクッと開発できてしまう「Scaffolding機能」とはどういうものなのかについて紹介していきます。

Scaffolding機能とは

「Scaffolding機能」とは、基本的な機能をあらかじめ実装した、アプリケーションの骨格を作成するための機能です。

Ruby on Railsでは、コントローラークラス(Controller)、テンプレート(View)、モデルクラス(Model)、ルーティングをそれぞれ準備する必要があるのですが、

「Scaffolding機能」を利用することによって、それらを自動生成してくれ、データベースの基本操作である、CRUD処理(作成・読み出し・更新・削除)機能を備えています。

Scaffolding機能を使用した後に出来上がっているものは以下のようなものです。

「Scaffolding機能」を使用すると上記のようなアプリケーションがすぐに生成されるので、開発を効率化してくれます。

次に、Scaffolding機能を利用して、アプリケーションを作成します。

Scaffolding機能による開発手順

アプリの新規作成

アプリを作成したいディレクトリまで移動し、以下のコード実行し、scaffoldingSampleというプロジェクトを作成します。

rails new scaffoldingSample

アプリ開発に必要なファイルが生成されます。

テーブルを操作する関連ファイルをまとめて生成

今回はusersテーブルをscaffolding機能を用いて、

$ rails g scaffold モデル名 カラム名:型というコードをターミナル上で実行します。

$ rails g scaffold users name:string age:integer

幾つかファイルが自動で生成されます。

マイグレーションファイルの実行

以下のコードをターミナル上で実行し、テーブルを作成します。

rake db:migrate

実行すると、テーブルが作成され、ScaffoldingによるCRUD処理を備えたアプリケーションの土台が完成です。

>【Ruby on Rails】データベース作成とCRUD処理

出来上がったものの確認

上記の操作終了後に出来上がったものを確認します。

http://localhost:3000/usersにアクセスすると、「Users」の画面にいきます。以下のように、CRUD処理が実装されたアプリケーションが出来上がります。

このように「Scaffolding」を使用することによって、アプリ開発を効率化することができます。

まとめ

「Scaffolding」とは何か、また、それを実行後に作成されるアプリケーションについて紹介しました。

参考文献