Railsでアプリケーションやってみよー

Ruby on Railsを始めてみる

アプリケーションのひな型を作る

Railsで新規アプリケーションを作成し、開発を進めていくためにはrails newコマンドを使用します。
このコマンドを実行すると、Railsアプリケーションのひな形(予め用意されたアプリケーションの基本形)が作成されます。

Windows :コマンドプロンプト Mac:ターミナル)

$rails new アプリケーション名

 このコマンドだけで、必要なファイルが一通り自動生成される

 

Railsで画面表示するのに必要なファイル

大きく分けて以下のフォルダやファイルを変更していきます

これらを言い換えてみると、このように表現できます。

  • routes.rb → URL(WEBページの住所)とControllerをつなげる道
  • Controller → 機能を作る(司令塔)
  • View → 画面(WEBページ)に表示されるもの

 

Controllerの作成

MVCの中の「C」であるControllerは、画面上でユーザーから入力された情報を処理し、最終的にユーザーにviewファイル(処理結果としてユーザに表示する画面)を返す役割を担っています。アプリケーションの機能を制御する司令塔となります。

処理とは以下の3つのこと指します。

  • Modelとのやり取り
  • viewファイルに渡す変数(インスタンス変数)の定義
  • ユーザーに表示するviewファイルの指定
コントローラーの作成コマンド

コントローラを作成するためには以下のコマンドを実行します。

$ rails g controller コントローラー名

今のところ、フォルダ構成はこんな感じ

f:id:H_Nagisa:20190410014509p:plain

Topページを作ってみる

topページを表示するためのアクションを定義していきます。defはdefineの略で「定義する」という意味です。

f:id:H_Nagisa:20190410015212p:plain

これだけでtopアクションが定義されます!

ここまででコントローラの用意が終わったので、次はルーティングを設定していきましょう。

 

Routing(ルーティング)の設定

 利用者がRailsのアプリケーションを利用するには、ブラウザを経由してコントローラのアクションを呼び出す必要があります。ブラウザから特定のURLへアクセスすることでアクションが呼び出されますが、URLとアクションを結びつけるのがルーティングです。

 

ルーティングの記述場所

ルーティングの設定は、Railsアプリケーション作成時に自動的に作成される「config/routes.rb」ファイルに記述します

ルーティングの記述方法

基本的な書き方は、こんな感じ

httpメソッド 'URL' => 'コントローラー#アクション'

 

 

HTTPについて(Hyper Text Transfer Protcol)

HTTPがサーバにリクエストする際、HTTPメソッドというものがあります。通信のやり取りの手法を用途で定義したものです。

GET:ブラウザからサーバへURLを送信してWEBページを取得(GET)する。単にWEBサイトを閲覧する際には、このメソッドが利用される。

POST:ブラウザからサーバへURL以外の「データ」も一緒に送信(POST)して処理を命令する。会員情報の登録、記事投稿など、サーバに情報を送信するために利用される。

DELETE:ブラウザからサーバへURL以外の削除をするための情報も一緒に送信して処理を命令する。会員情報の削除、記事の削除など、削除の処理をするために利用される。


今回は「画面を表示したい」ため、上記手法としてはGETを利用し、どのURLにアクセスしたときに、どのコントローラのアクションを呼び出すかを設定しています。記載するときは小文字で「get」と入力します。
Rails.application.routes.draw do
    get 'top' => 'root#top'
end

今回は「topというURLにアクセスしたときに、rootコントローラのtopアクションが呼び出される」ように設定していきます。

これでルーティングは定義できたので、最後にViewファイルを作成します

 

Viewファイルの作成

Railsはルーティング → コントローラ → ビューといった流れになっているので、最後に対応するビューファイルを用意して表示してみましょう

 

Viewファイルの作成場所

app/views/コントローラ名
といったフォルダの中へ配置していく必要があります。

今回はapp/views/root/フォルダ以下に作成しましょう。

コントローラ名と対応したところにファイルを作るのと同じように、ビューファイルの名前はアクション名と同じ名前から始めるルールがあります。なので

top.html.erb

としましょう。

f:id:H_Nagisa:20190410020422p:plain

 

f:id:H_Nagisa:20190410020508p:plain

 とりあえず、何か文字を表示しましょう

<h1>ここTopージです</h1>

 

 ralisサーバーの起動

アプリケーションを動かすためにはサーバが起動している必要があります。railsには開発環境用に用意されている物があるのでそれを起動して動作を確認していきます。

以下のコマンドで起動できます。

$ rails s

 

うまくサーバが立ち上がるとアプリケーションへアクセスできるようになります。
実際にURLにアクセスしてTopページが表示されるか確認してみましょう。

f:id:H_Nagisa:20190410021128p:plain

 

 

 

________________________

xoxo Ruby(^_-)-☆