LoginSignup
5
5

More than 5 years have passed since last update.

Railsでよく使うフォルダ

Last updated at Posted at 2017-07-05

$ rails newをするとアプリケーションフォルダ内に大量のサブフォルダが自動的に吐き出される。
このそれぞれに意味があってそれぞれがもちろん重要なのだが、実際にはほとんど触らないものも多い。
初めてRailsアプリ開発に取り組もうとして、このフォルダの多さに面食らって挫折してしまった人も多いと思う(私もそうだ)。そこで、簡単なアプリ開発でよく使う(触る)フォルダをまとめてみる。

app/assets

JavaScriptやcssなどのファイルをRailsではassets(アセット)と呼ぶ。これらのファイルが置かれているフォルダがここ。
JavaScriptやcssを触る際には、基本的にはこのフォルダを触ることになる。

app/assets/javascripts/aplication.js

JavaScriptをインクルードしたりするときは、ここに記述する。

app/assets/javascripts/stylesheet.js

CSSをインクルードしたりするときは、ここに記述する。

app/controllers

いわずと知れたMVCのCにあたるControllerはすべてここに入っている。
しかし、Railsは基本がしっかりしているのでここに書かれるのは面白みがないコードであることがほとんどである。逆に、こみいった処理がここに書かれている場合、アプリの設計を見直すべきかも知れない。

app/models

MVCのMにあたるModelが入っている。Railsの場合、rails generate model Hoge name:string ...で作成すると、自動的にモデルファイル(Hoge.rb)も生成される。何も書かなくともアプリは動作するが、バリデーションやエラーメッセージを定義するときにはここにコードを書く。ただ、ここに書くのはRubyとは名ばかりの謎言語なので、ちゃんと勉強してからでないと心が折れる。

app/view

MVCのVにあたるViewが入っている。個人的にはこのフォルダに書き込んでいる時間が一番長い。ユーザーインターフェースを記述する。

config/routes.rb

ルーティング、どんなURLに対しどのページを表示するかを定義する。基本的にはModelをresourcesとして読み込むことで、そのモデルに標準で備わっているコントローラーに対応するページが自動的にに定義される。個別に定義したい場合、`model#method'の形式でリソースを定義する。設計がちゃんとしていればこのファイルを触る機会は中盤以降なくなっていく。アプリ開発の途中で変更するとリンクがだめになったりするので要注意。

config/locales/ja.yml

アプリで使用するメッセージの日本語版をここに格納する。gem i18n-railsが必要。メッセージを修正する場合はModel/View/Controllerを直接書き換えるのではなくこのファイルを修正する。Model/View/Controlerには、メッセージに対応するシンボルを記述する。

Gemfile

bundlerがgemを読み込むときに参照するファイル。gemを追加する際は、直接gem hogehage installとするのではなく、Gemfileにgem hogehageと記述してからbundle installをする。

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5