今まで環境構築を行ってきましたが、
ページのタイトルを作成するだけの単純なWebページを作成します。
Railsにはジェネレーターと呼ばれるコードを自動生成してくれる機能があるのですが、最初は自分でコードを書くことでファイルの関連性に関して理解を深め、ジェネレーターのありがたさをわかってもらうために手作業で行っていきます。
MVCの説明でも行ったようにまずはルーティングの説明を行っていきます。
ルーティング
ルーティングとはクライアントPC(みなさんがWebページを閲覧する際)から送られてきたHTTPリクエストに対して、サーバー側でどのような処理をするか紐付ける作業のことをさします。
ルーティングファイルは「アプリ名/config/routes.rb」にあります。
デフォルトでは以下のように記載されています。
Rails.application.routes.draw do
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
end
ルーティングの指定方法としてはサンプルとして以下のように記載します。
こちらは「root」今回作成した開発環境では「http://localhost:3000/」にアクセスした際、「’boards#index’」mainコントローラーのindexメソッドで処理するという意味になり、「アクセス先 ‘コントローラー名#メソッド名’」で記載します。
Rails.application.routes.draw do
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
root 'main#index'
end
コントローラーの作成
上記でmainコントローラーを指定したので、作成していきます。
コントローラーは「アプリ名/app/controllers」直下に作成します。
ファイル名は「main_controller.rb」で作成します。ファイルの命名はスネークケースで行います。
以下が作成したrubyファイルの中身です。
コントローラーを作成した際はActionControllerクラスを継承することで、コントローラーとして扱われます。
class MainController < ApplicationController
def index
end
end
今回は特に処理をしないので、indexメソッド内には何も記載していませんが、実際のWebアプリケーションではこちらからモデルにデータを渡して、モデル側でデータの処理などを行います。
ビューの作成
ビューを作成する際は「アプリ名/views」内にコントローラー名と同じディレクトリを作成します。
そのため今回は、「アプリ名/app/views/main」というディレクトリを作成しました。
そしてそのディレクトリ内メソッド名と同名のファイルを作成します。
今回は「index.html.erb」というファイルを作成します。
まとめると「アプリ名/app/views/main/index.html.erb」という形になります。
これにより「http://localhost:3000/」にアクセスした際、「main_controller.rb」で処理を行い、「index.html.erb」がレンダリングして表示されます。
レンダリングとはWebページを表示する処理のことです。よく使われるので覚えておきましょう。
今回はh1タグのみ記載して動作をみていきます。
<h1>メインベージ</h1>
http://localhost:3000/」にアクセスしてメインページが表示されることを確認してください。
コメント