読者です 読者をやめる 読者になる 読者になる

Rails Webook

自社のECを開発している会社で働いています。Rails情報やサービスを成長させる方法を書いていきます

rails generateコマンドのよく使うコマンドまとめ

Rails初級 リファレンス

$ rails generateコマンドの使い方まとめました。

動作確認

  • Rails 4.1

目次

  1. rails generate コマンドで生成されるファイル一覧表
  2. rails generate scaffold コマンド(index〜destroyまで全て作成)
  3. rails generate controller コマンド(コントローラーとビューを作成)
  4. rails generate model コマンド(モデルとマイグレーションファイルを作成)
  5. rails generate migration コマンド(マイグレーションファイルを作成)
  6. rails generate で利用可能なフィールドタイプ一覧
  7. rails destroy コマンド(rails generateで生成したファイルを削除)
  8. ヘルプの表示方法

$ rails generateコマンドで生成されるファイル一覧表

コマンド名概要コントローラー(テスト含む)ビューヘルパー(テスト含む)モデル(テスト含む)マイグレーション
scaffold全て作成(基本的なCRUDの画面や機能が欲しい場合)
controllerコントローラーとビューを作成××
modelモデルとマイグレーションを作成(新規モデル作成時など)×××
migrateマイグレーション作成(カラム追加時など)××××


$ rails generate scaffoldコマンド

$ rails generate[ or g] scaffoldでコントローラー、ビュー、モデル、マイグレーションファイルの全てを作成することができます。
$ rails g controllerのように、index newなどのアクションを指定して作成することはできません。

# 使い方
$ rails generate scaffold NAME [field[:type][:index] field[:type][:index]] [options]

# サンプル
$ rails generate scaffold post title body:text published:boolean
$ rails generate scaffold purchase amount:decimal tracking_id:integer:uniq

使えるフィールドタイプについては、下記の「rails generate で利用可能なフィールドタイプ一覧」を参照して下さい。
よく使うオプションについては、下記の「rails generate のよく使うオプション一覧」を参照して下さい。

$ rails generate controllerコマンド

$ rails generate[ or g] controllerでコントローラーとビューを作成することができます。

# 使い方
$ rails generate controller NAME [action action] [options]

# サンプル
$ rails g controller CreditCards open debit credit close
# =>
#  'credit_cards/open'などの routeを追加
#  'app/controllers/credit_cards_controller.rb'を追加(コントローラーのテストも追加)
#  'app/views/credit_cards/open.html.erb'などの viewを追加
# 'app/helpers/credit_cards_helper.rb'を追加(ヘルパーのテストも追加)
# 'credit_cards.js.coffee'と'credit_cards.css.scss'のアセットを追加

よく使うオプションについては、下記の「rails generate のよく使うオプション一覧」を参照して下さい。

$ rails generate modelコマンド

$ rails generate[ or g] modelでモデルとマイグレーションファイルを作成することができます。

# 使い方
$ rails generate model NAME [field[:type][:index] field[:type][:index]] [options]

# サンプル
$ rails g model post title:string body:text published:boolean
# => 
# String型のtitle、Text型のbody、Boolean型のpublishedカラムが存在するマイグレーションファイルと
# Postモデルが作成される

使えるフィールドタイプについては、下記の「rails generate で利用可能なフィールドタイプ一覧」を参照して下さい。
よく使うオプションについては、下記の「rails generate のよく使うオプション一覧」を参照して下さい。

$ rails generate migrationコマンド

$ rails generate[ or g] migrationでマイグレーションファイルを作成することができます。

# 使い方:
$ rails generate migration NAME [field[:type][:index] field[:type][:index]] [options]

# サンプル:
$ rails g migration add_image_url_to_post image_url:string
# => postsテーブルにString型のimage_urlカラムを追加するマイグレーションファイルを作成

$ rails g migration add_order_id_to_line_item order_id:integer
# => line_itmesテーブルにInteger型のorder_idカラムを追加するマイグレーションファイルを作成

使えるフィールドタイプについては、下記の「rails generate で利用可能なフィールドタイプ一覧」を参照して下さい。
よく使うオプションについては、下記の「rails generate のよく使うオプション一覧」を参照して下さい。

$ rails generateで利用可能なフィールドタイプ一覧

利用可能なフィールドタイプ:
integer
primary_key
decimal
float
boolean
binary
string
text
date
time
datetime
timestamp
references

ヘルプの表示方法

$ rails g -h # rails g のヘルプ表示
$ rails g controller -h # rails g controller のヘルプ表示

参考サイト