2
0

More than 3 years have passed since last update.

scaffoldについて(Ruby on Rails)

Posted at

プログラミングの勉強日記

2020年7月22日 Progate Lv.213
Ruby on RailsⅧ
Progateではscaffoldを扱わないが、学校の授業で勉強したので自分でも調べてみた。

scaffoldとは

 scaffoldは「スキャフォールド」と読みRuby on Railsのコードを自動生成する便利なものの1つである。Railsアプリケーションの開発をする際にはモデル、コントローラ、ビュー、ルーティングを作成する必要がある。この作業をまとめて行う機能がscaffoldである。なので、scaffoldを使うことでRailsのアプリを早く作ることができる。

使い方

$ rails generate scaffold モデル名

$ rails generate scaffold モデル名 カラム名:データ型

このコマンドによって以下のファイルが生成される。

1.マイグレーションファイル、モデル(データベースのテーブルやカラムを変更できるファイル)
db/migrate/YYYYMMDDHHMMSS_create_モデル名.rb
app/model/モデル名.rb

2.ビュー(コントローラで定義されたアクションに対応するビューファイル)
app/views/モデル名/index.html.erb
app/views/モデル名/edit.html.erb
app/views/モデル名/show.html.erb
app/views/モデル名/new.html.erb
app/views/モデル名/_form.html.erb

3.コントローラとルーティング
test/controllers/モデル名_controller_test.rb
 このファイルの中にindex,show,new,edit,create,update,destroyのアクションが自動的に定義されている。
config/routes.rb
 ルーティングの設定ファイルの中でresources :モデル名と追加される。

4.その他
app/helpers/モデル名_helper.rb
test/helpers/モデル名_helper_test.rb
app/views/モデル名/index.json.jbuilder
app/views/モデル名/show.json.jbuilder
app/assets/javascripts/モデル名.js.coffee
app/assets/stylesheets/モデル名.css.scss
app/assets/stylesheets/scaffolds.css.scss

scaffoldで作成したファイルの削除

 scafoldを用いて作成したファイルはコマンドで削除することができる。

 scaffolsで作成したファイルをすべて削除
$ rails destroy モデル名

Modelに関するファイルのみ削除
$ rails destroy model モデル名

コントローラのみ削除
$ rails destroy controller モデル名

ビューのみ削除
$ rails destroy view モデル名
2
0
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
2
0