[Ruby on Rails] appディレクトリとconfigディレクトリを分かりやすく解説します!

Ruby on Railsでは「rails new アプリケーション名」で簡単にアプリケーションの枠組みを作成することができます。

上記のコマンドでアプリケーションを簡単に生成することができますが、たくさんのディレクトリやファイルがあり、各々のディレクトリとファイルがどのような役割を担っているのか把握するのが大変かと思います。

そこで、このページではよく使用するappディレクトリとconfigディレクトリの中身と役割について解説していきたいと思います。

最後まで読んで頂けたらと思います。

Webアプリケーションのディレクトリのひとつに「appディレクトリ」というものがあります。

このappディレクトリはWebアプリケーション開発をしていくうえで一番使用する頻度が高いディレクトリとなっています。

このappディレクトリの中には以下のようにassets、contrillers、helpers、jobs、mailer、models、viewsといったディレクトリが配置されています。

それではappディレクトリ内にあるディレクトリの役割を一つ一つ見ていきましょう。

assets

assetsはビューに埋め込むcss、javascript、画像などのアセットを管理するディレクトリとなっています。

assetsディレクトリ内には以下のようなディレクトリが配置されています。

images

画像を配置するためのディレクトリとなっています。

javascripts

javascriptファイルを配置するためのディレクトリとなっています。

中でもapplication.jsファイルを使用することですべてのhtmlファイルへjavascriptsを適用させることができます。

stylesheets

cssファイル、scssファイルを配置するためのディレクトリとなっています。

中でもapplication.cssファイルを使用することですべてのhtmlファイルへcssを適用させることができます。

controllers

controllersとはコントローラーを管理するディレクトリとなっています。

またコントローラー共通のコードを管理するconcernsディレクトリも配置されています。

helpres

ヘルパーモジュールを管理するディレクトリとなっています。

jobs

ジョブクラスを管理するディレクトリとなっています。

mailers

メーラークラスを管理するディレクトリとなっています。

models

モデルクラスを管理するディレクトリとなっています。

またモデル共通のコードを管理するconcernsディレクトリも配置されています。

views

ビューテンプレートを管理するディレクトリとなっています。

ビューテンプレートは各コントローラーに対応しており、各コントローラー名のディレクトリで管理することになっています。

また、共通フレームであるレイアウトを提供するためのlayoutsディレクトリがデフォルトで生成されます。




2.configディレクトリ

configディレクトリは実行環境に関するものを管理するディレクトリとなっています。

それではconfigディレクトリ内にあるディレクトリとファイルの役割を一つ一つ見ていきましょう。

environments

開発のdevelopment、テストのtest、運用のproductionなどの実行環境ごとの設定情報を管理するディレクトリとなっています。

initializers

Webアプリケーションで使用する初期情報設定ファイルを管理するディレクトリとなっています。

locales

言語を管理するディレクトリとなっています。

application.rb

開発のdevelopment、テストのtest、運用のproductionなど、すべての実行環境に共通の設定を行うためのファイルです。

boot.rb

Gemfileを管理し、Gemfileからgemのセットアップを行うファイルとなっています。

cable.yml

Action Cable用の環境別のデフォルトキューアダプターを管理するためのファイルとなっています。

credentials.yml.enc

暗号化キーを管理するためのファイルとなっています。

database.yml

開発のdevelopment、テストのtest、運用のproductionなどの実行環境の設定を行うためのファイルとなっています。

environment.rb

サーバー起動時にappplication.rbの初期化を行うためのファイルとなっています。

master.key

credentials.yml.encの情報を復号するためのキーがあるファイルとなっています。

puma.rb

Pumaの実行環境を設定するためのファイルとなっています。

routes.rb

ルート情報を管理するためのファイルとなっています。

spring.rb

Springの制御設定を行うためのファイルとなっています。

※Springはアプリケーション起動時に必要なライブラリをロードする役割を担っています。

storage.yml

Active Storageの環境設定を行うためのファイルとなっています。




3.Ruby on Railsを学ぶことができるオススメの教材

Ruby on Railsを学習している皆様にオススメの教材をご紹介させていただきます。

現場で使える Ruby on Rails 5速習実践ガイド

以下の本はRuby on Railsの学習を一通り終えてある程度知識を身につけた方にオススメしたい本です。

 

現場で使える Ruby on Rails 5速習実践ガイド」は現場で実際にどのように使われているのかという視点も交えて解説されています。

そのため、初心者の方が次のステップに進むために最適な本となっていますので、オススメです。

これらの本で是非学習を進めてみてはいかがでしょうか?

レベル別におすすめの本も紹介していますので、どのような本がオススメか知りたい方はこちらもご覧になって下さい。

【2022年最新版】Ruby on Railsを学ぶことができるおすすめの本/参考書

Udemy

UdemyではRuby on Railsを学ぶことができる講座を多数取り扱っています。

以下の記事でRuby on Railsを学ぶことができるオススメの講座をまとめていますので、よかったらご覧になって下さい。

【安すぎ】Udemy(ユーデミー)で学べるおすすめのRuby on Rails講座をご紹介!

プログラミングスクール

TechAcademyWebCampCodeCampTech CampなどでRuby on Railsを学ぶことができます。

それぞれ無料体験も行っているので、どのようなものか試してみるのもいいでしょう。

以下の記事で各プログラミングスクールをまとめているのでこちらもよかったらご覧になってください。

【働きながらOK】TechAcademy(テックアカデミー)の評判・口コミは? いくらなの? 【難しい?】働きながらOK! DMM WEBキャンプの評判・口コミは? 【課題が難しい?】CodeCamp(コードキャンプ)の評判・口コミは? 【無料体験実施中】テックキャンプ「プログラミング教養」でプログラミングをやってみた! 【体験談】テックキャンプ「プログラミング教養」の学習内容は? 働きながらテックキャンプで学ぶことは可能? 結論:可能です! 【無料カウンセリング実施中】テックキャンプではどのような言語・技術を学ぶことができるの? テックキャンプの受講料はどのくらい? 安く通う方法も解説! テックキャンプの受講料はどのくらい? 安く通う方法も解説! 【体験談/感想】テックキャンプでどのようなスキルが身につくの?




4.まとめ

ポイント
  • appディレクトリの中にはassets、contrillers、helpers、jobs、mailer、models、viewsといったディレクトリが配置されています
  • configディレクトリは実行環境に関するものを管理するディレクトリとなっています

コメントを残す

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