21
21

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Rails Tree Cheat Sheet

Last updated at Posted at 2014-12-20

Ruby on RailsはWebアプリケーションのフレームワークです。
レイヤー化アーキテクチャが優れており、ファイルの構造が厳密に規約があります。

ファイルの構造は、自己で追加したりGemで機能を拡張して増えます。
プロジェクトにより違いがありますが、よく使う構造をチートシートにまとめました。

Application Directory

  • 開発の主となるエリア
├ app/                                  # アプリケーション
    ├ assets/                           # フロントエンドで利用するファイル
        ├ images/                       # gif, jpeg, png ...
        ├ javascripts/                  # js, coffee
            ├ application.js            # Rails:Application
            └ users.js.coffee           # Rails:Scaffold (User)
        ├ stylesheets/                  # css, scss
            ├ application.css           # Rails:Application
            ├ scaffold.css              # Rails:Scaffold
            └ users.css.scss            # Rails:Scaffold (User)
    ├ controllers/                      # リクエストとレスポンスの制御
        ├ concerns/                     # Rails:Aspect Oriented Programming
        ├ application_controller.rb     # Rails:Application
        └ users_controller.rb           # Rails:Scaffold (User)
    ├ decorators/                       # viewsの補助          [ gem `draper` ]
        └ user_decorator.rb             # Rails:Scaffold (User)
    ├ helpers/                          # viewsの補助
        ├ application_helper.rb         # Rails:Application
        └ users_helper.rb               # Rails:Scaffold (User)
    ├ models/                           # ビジネスロジック (エンティティ)
        ├ concerns/                     # Rails:Aspect Oriented Programming
        ├ support/                      # モデルの支援
            └ settings.rb               # configの支援         [ gem `settingslogic` ]
        └ user.rb                       # Rails:Scaffold (User)
    ├ policies/                         # 認可の補助           [ gem `pundit` ]
        ├ application_policy.rb         # Rails:Application
        └ user_policy.rb                # Rails:Scaffold (User)
    ├ services/                         # ビジネスロジック (エンティティ以外)
    ├ views/                            # 出力インターフェイスのデザイン
        ├ layouts/                      # 基本レイアウト
            └ application.html.erb      # Rails:Applicationusers/                        # Rails:Scaffold (User)
            ├ edit.html.erb             # 編集 Rails:Scaffold (User)
            ├ index.html.erb            # 一覧 Rails:Scaffold (User)
            ├ new.html.erb              # 追加 Rails:Scaffold (User)
            ├ show.html.erb             # 表示 Rails:Scaffold (User)
            └ _form.html.erb            # 編集,追加の部品 Rails:Scaffold (User)
    └ workers/                          # 遅延処理             [ gem `sidekiq` ]

Other Directory

  • 開発の補助となるエリア
├ config/                               # 設定情報
    ├ locales/                          # 言語
        ├ defaults                      # 基本の言語
            ├ en.yml                    # 基本の言語 (英語)
            └ ja.yml                    # 基本の言語 (日本語)
        ├ models                        # モデルの言語
            ├ user                      # Userの言語
                ├ en.yml                # Userの言語 (英語)
                └ ja.yml                # Userの言語 (日本語)
    ├ database.yml                      # データベース
    └ routes.rb                         # ルーティング
├ db/                                   # データベース
    ├ migrate/                          # マイグレーション
    ├ development.sqlite3               # データベース本体
    └ schema.rb                         # データベース構造
├ doc/                                  # ドキュメント
├ lib/                                  # ライブラリ
    └ tasks                             # rake task
├ log/                                  # ログの出力先
├ public/                               # フロントで利用するファイルtest/                                 # テストファイル
├ spec/                                 # テストファイル      [ gem `rspec-rails` ]
    ├ cassettes/                        # HTTP テストデータ   [ gem `vcr` ]
    ├ factories/                        # Model テストデータ  [ gem `factory_girl` ]
    ├ features/                         # シナリオテスト      [ gem `capybara` ]
    ├ support/                          # テストの支援        [ gem `rspec-rails` ]
    ├ rails_helper.rb                   # テストの補助        [ gem `rspec-rails` ]
    └ spec_helper.rb                    # テストの補助        [ gem `rspec-rails` ]
├ tmp/                                  # テンポラリファイル
└ vendor/                               # 外部ライブラリ

Root Files

  • 開発のREADMEや定義ファイル等
├ .bundle                               # Gemの補助         [ gem `bundler` ]
├ .env                                  # 設定の補助        [ gem `dotenv-rails` ]
├ .git                                  # `Git`のリポジトリ
├ .gitignore                            # `Git`から除外
├ .pryrc                                # REPL環境          [ gem `pry-rails` ]
├ .rspec                                # rspecオプション   [ gem `rspec` ]
├ config.ru                             # Rackup            [ gem `rack` ]
├ Gemfile                               # `Gem`の一覧
├ Gemfile.lock                          # `Gem`の依存関係
├ Guardfile                             # テストの自動化    [ gem `guard-rspec` ]
├ Procfile                              # `Run`の補助       [ gem `foreman` ]
├ Rakefile                              # Rake Task         [ gem `rake` ]
└ README.md                             # 最初に読むドキュメント
21
21
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
21
21

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?