こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、10年目エンジニアです。
この記事では、 Ruby on Railsでコントローラを新規作成するときに同時にアクションも作成することができるやり方について丁寧に解説します。
コントローラを新規作成するコマンドについては、以下の記事をご参考ください。
前提条件:実行環境について
実行環境は以下の通りです。
OS | Windows10 |
---|---|
Rubyのバージョン | 2.6.6 |
Ruby on Railsのバージョン | 6.0.3.5 |
Ruby on Railsでコントローラを新規作成するときに同時にアクションも作成するコマンドを解説
Ruby on Railsでコントローラを新規作成するときに同時にアクションも作成するコマンドを解説します。
コマンドプロンプトを開きプロジェクトがある場所まで移動させます。
- コマンドプロンプトを開き、cdコマンドで移動
- エクスプローラーからコマンドプロンプトを起動
のどちらかで移動させてください。
エクスプローラーからコマンドプロンプトを起動するやり方は、下記の記事をご参考ください。
ここで新規作成するためのコマンドをたたきます。
コントローラーとアクションとビューを新規作成するためのコマンドは、
1 |
rails generate controller コントローラー名 アクション名1 アクション名2 アクション名3… |
です。
アクション名は複数記載してもOKです。
注意点としまして、アクション名とアクション名の間には半角スペースを入れてください。
この記事では、新規作成するコントローラー名を【hoge】とし、アクションを
- index
- detail
とします。
コマンドをたたく前に環境を確認します。
コントローラーは
プロジェクト\app\controllers
配下に作成されます。
【hoge_controller.rb】が存在しないことを確認しました!
ビューは
プロジェクト\app\views
配下に作成されます。
こちらも【hoge】ディレクトリが存在しないことを確認しました!
新規作成するためのコマンドは
1 |
rails generate controller hoge index detail |
です。
コマンドをたたいて、実行結果が下記画像のようになっていれば指定したコントローラーとアクション、そしてそれらに紐づくビューが新規作成されています!
新規作成したコントローラーの中身は、このようになっています。
1 2 3 4 5 6 7 |
class HogeController < ApplicationController def index end def detail end end |
指定したアクションがすでに指定されていることが確認できました。
ビューも確認します。
コマンドでビューについては何も指定していませんが、コントローラーを作成したときにアクションも作成した場合、そのコントローラーとアクションに紐づくビューが同時に作成される仕様となっています。
中身は、下記のようになっています。
1 2 |
<h1>Hoge#detail</h1> <p>Find me in app/views/hoge/detail.html.erb</p> |
実行結果をよく確認してみると、ルーティングも自動で設定されていることが確認できます。
ルーティングは
プロジェクト\config\routes.rb
で設定されます。
中身を見てみると、指定したアクションが宣言されていることを確認しました。
1 2 3 4 |
Rails.application.routes.draw do get 'hoge/index' get 'hoge/detail' end |
動作確認
では、画面に本当に表示することができるのか確認します。
アプリケーションを起動します。
起動するやり方は、以下の記事をご参考ください。
起動している状態でhttp://localhost:3000/hoge/indexにアクセスしてみると、画面が表示できることが確認できます。
まとめ:Ruby on Railsでコントローラーを新規作成するときはアクションとビューを同時に作成してみよう
以上がRuby on Railsでコントローラーを新規作成するときにアクションとビューを同時に作成するやり方の解説でした!
あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ
コメント