Windowsで始めるRuby on Rails入門【3.フォルダ構成】

どうも、tatsuです!

この記事はWindows環境でのRuby on Railsの入門記事シリーズの1つとなります。

前回記事はコチラ↓↓

Windowsで始めるRuby on Rails入門【2.scaffold】

2018.10.18

今回は第三回目として、Railsの基本フォルダ構成について説明したいと思います。

MVCアーキテクチャ

RailsではMVCアーキテクチャという考えを採用しています。なので、まずはなんとなく理解してもらう必要があります。

MVCとはモデル・ビュー・コントローラーのことを指します。

これは、以下のように役割を分けてソースコードを管理しやすくするための考えです。

  • データ処理(モデル)
  • ユーザーに表示するUI部分(ビュー)
  • ビューとモデルの制御(コントローラー)

 
 
さて、ここからは実際に前回scaffoldを作ったアプリのフォルダをみて説明していきます。
VisualStudioCodeを起動し、sampleAppフォルダを開きましょう!

補足
開くのは通常のエクスプローラでも構いませんが、今後VisualStudioCodeを使用して開発を進めていきます。

そのため、できるだけ今からVisualStudioCodeに慣れておくようにしてください。

M:モデル


モデルは上記のようにmodelsディレクトリに格納されています。

今回はsamplesというテーブルに対応するsample.rbというモデルが作られています。

V:ビュー


ビューは上記のようにviewsディレクトリに格納されています。

なにやらhtmlのあとにerbがついた、「xxx.html.erb」というファイルがたくさんありますね。

実はこれがビューのファイルになります。

「.html」はHTMLファイルを表しますが、「.html.erb」ファイルはRubyプログラムも書くことができるHTMLファイルだと思ってもらえればよいかと思います。

C:コントローラー


コントローラーは上記のようにcontrollersディレクトリに格納されています。

今回はsampleモデルを扱うsamples_controller.rbというコントローラーが作られています。

全体像

基本的にはさきほど説明したフォルダを中心に開発していくこととなりますが、ここで全体像を確認しておきましょう。

ざっくり以下のような関係になっています。

なんとなく理解してもらえたでしょうか??

その他重要なファイル

プログラムはさきほどの通り、models,views,controllersフォルダに格納していきます。

ここではそれ以外の重要なファイルをご紹介します。

config/database.yml

まずはdatabase.ymlです。

このファイルはPostgreSQLの設定をした時にでてきましたね!

データベースに関する設定ファイルになります。

config/routes.rb

そしてroutes.rbです。

routes.rbはアプリのルーティングを定義するファイルになります。

ルーティングとは、この処理を行うためにはどこにアクセスすればよいかといった情報を定義したものです。

コマンドプロンプトで以下のコマンドを実行すると、設定されているルーティングを確認することができます。

rails routes

URI Patternのようにアクセスすると、Controller#Actionが実行されます。

ちなみにコントローラーにAction名のメソッドを作ることでアクセス時の処理を決めることができます。

コントローラーの中身については次回以降みていきましょう!

まとめ:ざっくりMVCアーキテクチャを理解しよう

今回はRailsの採用しているMVCアーキテクチャを説明するとともに、フォルダ構造を見てきました。

なぜ「ざっくり」や「なんとなく」MVCアーキテクチャを知っておいて欲しかったかというと、どのフォルダにどのプログラムを格納すればいいか、どこにどのプログラムが入っているかなど、Railsを理解するのが早まるからです。

それでは構造もわかったことですし、次回はまた新しくアプリを作って一からMVCに対応するファイルを作っていきましょう!

それでは!

Windowsで始めるRuby on Rails入門【4.アプリケーション作成】

2018.11.09

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です