「押さえておきたいWeb知識」で検索お願いします!

[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速習実践ガイド」は現場で実際にどのように使われているのかという視点も交えて解説されています。

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

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

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

[2021年最新版] Ruby on Rails を学ぶことができるおすすめの本

Udemy

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

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

[必見!] Udemy(ユーデミー) おすすめのRuby on Rails講座

プログラミングスクール

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

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

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

プログラミングスクール TechAcademy(テックアカデミー)とは? 特徴・口コミをまとめてみました! プログラミングスクール DMM WebCamp ビジネス教養コースとは? 特徴・口コミをまとめてみました! プログラミングスクール CodeCamp(コードキャンプ)とは? 特徴・料金・口コミをまとめてみました! [感想・体験談アリ!] 実際にTech Camp(テックキャンプ)のプログラミング教養でプログラミングをやってみた! [感想・体験談あり!] Tech Camp(テックキャンプ)のプログラミング教養の学習内容は? 働きながらTECH CAMP(テックキャンプ)で学ぶことはできるのか? 結論:可能です! TECH CAMP(テックキャンプ)ではどのような言語・技術を学ぶことができるの? TECH CAMP(テックキャンプ)の受講料はどのくらい? 安く通う方法もお話します! [体験談・感想あり!]TECH CAMP(テックキャンプ)でどのようなスキルが身につくの?




4.まとめ

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

コメントを残す

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