LoginSignup
0
0

Railsアプリ作成の上で大まかな進め方

Last updated at Posted at 2023-07-15

DBの構造を考える

1.DBの基盤となるテーブルを考える
 どんなテーブル構造にするか?また、そのためにはどんなカラムの追加が必要か?(例:name,emailなど)
 内容がまとまったら、まずrails db:createでデータベース自体を作成します。ただし、この段階ではまだテーブルは作成されていません。

2.モデルを作る(命名規則は最初の文字が大文字の単数形
 基本構文は以下の通りです。
 rails g model モデル名 カラム名:データ型
 例えば以下のようになります。
 rails g model Content name:string email:string
 rails g modelを実行するとモデルと同時にマイグレーションファイルも生成されます。なのでrails g migrationは実行不要です。もし、先にマイグレーションファイルを作成してしまったら
rails g model モデル名 --skip-migrationでmodelだけを作成し、マイグレーションファイルは作成しないようにしてください

3.rails db:migrateを実行してテーブルを作成する
 rails db:migrateを実行することで初めてテーブルが作成されます。

コントローラを作る(この時controller名は小文字の複数形にすること)

基本構文は以下の通り
 rails g controller コントローラー名
 例は以下の通り
  rails g controller contents

コントローラでアクションを定義する

CRUD(Create, Read, Update, Delete)操作に対応する7つのアクション(index, new, create, show, edit, update, destroy)の中から必要なものを定義します。

ビューを作る

コントローラのアクションに対応するビューファイルを作成します。例えば、新規作成用の画面を表示するnewアクションに対するnew.html.erbや、編集用の画面を表示するeditアクションに対するedit.html.erbなどを作成します。

routes.rbを定義する

get '/contents', to: 'contents#index'のようにルーティングを一つ一つ書く方法もありますが、これでは時間がかかるためCRUD操作に対応する7つのルーティング(index, show, new, edit, create, update, destroy)を一度に定義するために、resourcesメソッドを使うことが一般的です。以下のように書くことで全てのCRUDルーティングを定義できます。
resources :コントローラ名
また、特定のroutesを定義したい時はonlyを使って指定してあげることもできます

0
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
0
0