🏗️
万屋コマンド "scaffold"
"Scaffold"の意味
a structure made of scaffolding for workers to stand on when they want to reach high parts of a building - Cambridge Dictionary
つまり、高い建物を建設する職人さんのための足場。
Douglas Sacha/Moment/GettyImages
これのこと!
"Scaffold" on Rails
scaffold
コマンドでWebアプリケーションの足場となるファイルを生成する事ができます。
以下のコマンドを実行した場合...
rails g scaffold items
- itemsのルーティング(with
resources
メソッド) - itemsのコントローラー
- itemのモデル
- itemsのビューファイル(index, new, edit, show, form)
- テストコード関連のファイル
以上全てを生成してくれます。
勝手にマイグレート
scaffold
コマンドにはオプションもあります。
今回実際に使用したコマンドがこちら。
rails g scaffold CheckItem chef:references favorite:references
するとマイグレーションファイルを自動で作成。
class CreateCheckChefs < ActiveRecord::Migration[6.0]
def change
create_table :check_chefs do |t|
t.references :chef, null: false, foreign_key: true
t.references :favorite, null: false, foreign_key: true
t.timestamps
end
end
end
あとはrails db:migrate
を実行するだけでDBにテーブルを作成できました。すごい便利。
SOTD
自分で調べて開発を進めていると、今回のscaffold
のような思わぬ収穫があるもの。
初めてこの文字列をみた時はプリズンブレイクのマイケル・スコフィールドが脳裏をよぎりました。
参考:
Discussion