概要
改めて、Railsアプリ作成からコントローラ、ルーティング作成までを、備忘録として記述させて頂きます。
Railsアプリ作成
まずは、ターミナルを開き、作成したいRailsアプリを作成したいディレクトリに移動し、そこで以下のコマンドを実行します。その結果、直下にRailsアプリに必要なディレクトリが新規作成されます。
以下のコマンドの場合はmyappディレクトリが作成されます。
$ rails new myapp
作成完了後、myappディレクトリに移動します。
$ cd myapp
そして、現在いるディレクトリをエディターで開きたいので、現在いるディレクトリをエディターで開く以下のコマンドを実行しましょう。
$ code .
これで、エディターを起動することができます。
コントローラーの作成
ユーザー(ブラウザ)からのリクエストを受けるコントローラーを作成します。
まずは、Railsが提供するジェネレーターコマンドを使って、以下のようにコントローラーを作成します。
$ rails generate (自動生成する種別) (種別毎の指定)
generateはgに省略可能です。また、コントローラーを作成する例は以下のようになります。
$ rails g controller (コントローラー名) (アクション名)
では、実際にコントローラーを作ってみましょう。
以下は、アクション(コントローラーのメソッド)を省略してUsersコントローラーを作成した例です。
$ rails g controller users
これにより、ビューディレクトリ、テストコード、ヘルパーメソッド、アセット、CoffeeScript/SCSSが生成されます。
Usersコントローラーを作成したところで、続いてはアクションを作成していきましょう。
まず、app/controllers直下にusers_controller.rbというファイルが作成されているのを確認して下さい。開くとApplicationControllerクラスを継承したUsersControllerクラスが空で定義されているのを以下のように見つけることができると思います。
class UsersController < ApplicationController
end
このクラスに、インデックスメソッドを追加してみましょう。
以下のように行います。
class UsersController < ApplicationController
def index
render plain: 'Hello World!'
end
end
renderはコントローラーに備わってるメソッドです。クライアントに返すレスポンスを定義します。またplain:はその後の値で指定された文字列をクライアントに返すための指定です。この場合は、画面に「Hello World!」が表示されます。
ルーティングの設定
ユーザー(ブラウザ)からのリクエストを、コントローラーのアクションに割り振る役割を担うのがルーティングです。
ルーティングはconfig/route.rbのファイルで設定を行うことができます。
以下のように記述して下さい。
Rails.application.routes.draw do
get '/users' => 'users#index'
end
ここで、ここまでの工程が上手くいっているか、サーバーを起動して確認してみましょう。
以下のコマンドをターミナルで実行して下さい。
$ rails s
その後に、ブラウザでhttp://localhost:3000/usersにアクセスして動作を確認します。その結果、「Hello World」と表示されるのが確認できると思います。
また、その他、ルーティングのやり方は以下をご参照下さい。
Railsでよく使いそうなルーティングのやり方 - Qiita
まとめ
ここまでの工程をまとめると以下のようになります。
参考
続き
続きの記事は⤵︎
Railsのビューの基本 - Qiita