3
2

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 3 years have passed since last update.

Ruby on Railsの要点【ディレクトリ、コマンド編】

Last updated at Posted at 2019-11-18

Railsチュートリアルを終えたので、学んだことを整理していきたいと思います。
##ディレクトリ構成
よく使うファイル、ディレクトリだけを抜粋します。

app
 ├── assets/         # 画像ファイル、CSS、Javarcriptなど
 ├── controllers/    # コントローラー
 ├── helpers/        # ヘルパー関数
 ├── mailers/        # メール送信の設定
 ├── models/         # DBの各テーブルに紐づいた設定(関数、バリデーションなど)
 ├── uploaders/      # ファイルアップロード周りの設定
 ├── views/          # ビューファイル
config
 ├── routes.rb       # ルーティングの設定
db
 ├── migrate/        # DBの構成変更に関するファイル
 ├── seeds.rb        # DBに入れるデータ
public/              # 404エラーページなど
test
 ├── controllers/    # コントローラーのテスト
 ├── fixtures/       # テスト用のサンプルデータ
 ├── helpers/        # ?
 ├── integration/    # 統合テスト
 ├── mailers/        # メイラーのテスト
 ├── models/         # モデルのテスト
 ├── test_helper.rb  # テスト用のヘルパー関数
Gemfile              # 使いたいGemのリスト
Gemfile.lock         # Gemを使うための記述

##コマンド
####プロジェクトを作成
rails new {プロジェクト名}

$ rails new sample_app

####ローカルサーバーを起動

$ rails s

####Railsコンソールを起動
Railsコンソールを使うことで、現在の設定(関数、データベース、gemなど)を引き継いだ状態でRubyのコードを実行することができます。

$ rails c
$ rails c --sandbox #コンソールでの実行内容をDB等に反映しない

####テストを実行

$ rails t

####コントローラーを作成
rails g {コントローラー名} {アクション名}
コントローラー名は頭文字大文字複数形

$ rails g controller Users
$ rails g controller Users new show index #中身が空の「new,show,index」アクションを生成

作られるファイル
controller、view、test/controllers、test/helpers、scss、js

####モデルを作成
rails g model {モデル名} {カラム名:型}
モデル名は頭文字大文字単数形
新規テーブルを作成する時に使います。

$ rails g model User name:string age:integer 

作られるファイル
migration、model、test/model、test/fixture

####マイグレーションファイルを作成
rails g migration {マイグレーションファイル名}
既存テーブルの構造を変更したい時(カラムの追加など)に使います。
マイグレーションファイル名は、作成目的がわかるように命名します。

$ rails g migration AddNicknameToUser

作れられるファイル
migration

カラム追加カラム削除テーブル作成を行う場合には、以下のようなマイグレーションファイル名をつけると、必要なコードが途中まで書かれている状態でファイルが作成されます。

変更内容 マイグレーションファイル名
カラム追加 Addカラム名Toテーブル名
カラム削除 Removeカラム名Fromテーブル名
テーブル作成 Createテーブル名

####マイグレーションファイルを適用

$ rails db:migrate

####適用したマイグレーションをロールバック

$ rails db:rollback

####統合テスト用ファイルを作成
rails g integration_test {ファイル名}

$ rails g integration_test users_login_test

####gemをインストール
Gemfileに記述したgemをインストールします。

$ bundle install

##参考
Rails generate の使い方とコントローラーやモデルの命名規則
【Rails】マイグレーションファイルを徹底解説!

3
2
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
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?