0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Railsアプリ作成からコントローラ、ルーティング作成まで

Last updated at Posted at 2023-06-18

概要

改めて、Railsアプリ作成からコントローラ、ルーティング作成までを、備忘録として記述させて頂きます。

Railsアプリ作成

まずは、ターミナルを開き、作成したいRailsアプリを作成したいディレクトリに移動し、そこで以下のコマンドを実行します。その結果、直下にRailsアプリに必要なディレクトリが新規作成されます。

以下のコマンドの場合はmyappディレクトリが作成されます。

$ rails new myapp

作成完了後、myappディレクトリに移動します。

$ cd myapp

そして、現在いるディレクトリをエディターで開きたいので、現在いるディレクトリをエディターで開く以下のコマンドを実行しましょう。

$ code .

これで、エディターを起動することができます。

コントローラーの作成

ユーザー(ブラウザ)からのリクエストを受けるコントローラーを作成します。

まずは、Railsが提供するジェネレーターコマンドを使って、以下のようにコントローラーを作成します。

$ rails generate (自動生成する種別) (種別毎の指定)

generategに省略可能です。また、コントローラーを作成する例は以下のようになります。

$ rails g controller (コントローラー名) (アクション名)

では、実際にコントローラーを作ってみましょう。

以下は、アクション(コントローラーのメソッド)を省略してUsersコントローラーを作成した例です。

$ rails g controller users

これにより、ビューディレクトリテストコードヘルパーメソッドアセットCoffeeScript/SCSSが生成されます。

Usersコントローラーを作成したところで、続いてはアクションを作成していきましょう。
まず、app/controllers直下にusers_controller.rbというファイルが作成されているのを確認して下さい。開くとApplicationControllerクラスを継承したUsersControllerクラスが空で定義されているのを以下のように見つけることができると思います。

users_controller.rb
class UsersController < ApplicationController
end

このクラスに、インデックスメソッドを追加してみましょう。

以下のように行います。

users_controller.rb
class UsersController < ApplicationController
    def index
        render plain: 'Hello World!'
    end
end

renderはコントローラーに備わってるメソッドです。クライアントに返すレスポンスを定義します。またplain:その後の値で指定された文字列をクライアントに返すための指定です。この場合は、画面に「Hello World!」が表示されます。

ルーティングの設定

ユーザー(ブラウザ)からのリクエストを、コントローラーのアクションに割り振る役割を担うのがルーティングです。

ルーティングはconfig/route.rbのファイルで設定を行うことができます。

以下のように記述して下さい。

routes.rb
Rails.application.routes.draw do
    get '/users' => 'users#index'
end

ここで、ここまでの工程が上手くいっているか、サーバーを起動して確認してみましょう。

以下のコマンドをターミナルで実行して下さい。

$ rails s

その後に、ブラウザでhttp://localhost:3000/usersにアクセスして動作を確認します。その結果、「Hello World」と表示されるのが確認できると思います。

また、その他、ルーティングのやり方は以下をご参照下さい。
Railsでよく使いそうなルーティングのやり方 - Qiita

まとめ

ここまでの工程をまとめると以下のようになります。

参考

続き

続きの記事は⤵︎
Railsのビューの基本 - Qiita

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?