駆け出しプログラマーの備忘録

異業種から訪れたIT業界について赤裸々トークを繰り広げる予定!                                 あ、私はプログラミングとは無縁の人生を送ってきたクソザコ野郎です٩( 'ω' )و

駆け プロ

#44 【Ruby on Rails】基本の動きを汚い図で説明(ビュー・コントローラー・ルーティング)

f:id:momotaroch:20180502001515j:plain

Ruby on Rails】基本の動きを汚い図で説明

 

やっと動きを理解できてきたので

メモ書きした汚い図で説明しますね。(字が汚いけど許して)

f:id:momotaroch:20180502002342j:plain

▲こんな感じ

設定がまだの場合は過去サイトからどうぞ。

momotaroch.hatenablog.jp

目次

1.読み込み

まずは指定されたURLを読み込みにいきます。

この時に注意したいのは、

すぐに読み込まれるのではなくて

1〜5の順で経由して読み込まれていることです。

 

私だけの勘違いかもしれませんが、

意外とすぐに読み込まれていると勘違いしている方もいるのではないでしょうか?

 

2.ルーティング

xmlみたいな役割のものです。

ここで読みこむURL次に動かすアクション(htmlファイル)を

コントローラーに伝える命令を書かなければいけません。

 

ここで理解しておきたいのは、

上の例でいけば「home/top」と「home#top」は違う処理ということです。

 

3.コントローラー

次に動くのは、ルーティングで記述されたコントローラーです。

 

必ず、ルーティングで指定されたコントロール名の頭文字を大文字にしたコントロールファイルになるはずです。

そのコントロールファイルの中で、以下のように記述します。

def top

end

defの後に続けて記述するのがアクション名(htmlファイル)になります。

ここで指定されたhtmlファイルを読みにいきます。

 

この中で変数指定などもできますが、今回は省きます。

 

4.ビュー

いよいよページ表示に欠かせないhtmlファイルの記述です。

ファイル名は、アクション名.html.erbとなります。

 

コントローラーで指定されたアクション名のhtmlファイルが動きます。

この中ではスクリプトRuby)の記述が可能になります。

<% XXXX %>

 このように記述することで、XXXXの部分にfor文、if文などのプログラムを組むことができます。

変数を使用する場合何らかの値を返す式を表示するには下記の通りでイコール(=)をつけます。

<%= XXXX %>

 

また、if文やfor文でhtmlの記述をくくる場合は下記のようにします。

 <% 繰り返し処理 %>

<div>

  <h1>駆け出しプログラマーの備忘録</h1>

</div>

<% end %>

このようにすることで、

<div>内のhtmlの記述を繰り返し処理することができます。 

 

5.表示

最後に、ビューで記述された通りにWebページを指定URLで表示させます。 

 

以上が一連の流れとなります。

(間違っていたらご指摘お願いします)

f:id:momotaroch:20180418002608j:plain

 

汚い図と簡単な説明でごめんなさい。(´-` )

次はデータベースを紹介できたらしてみます。

 

読んでいただきありがとうございました。٩( 'ω' )و

 

終わりじゃ

f:id:momotaroch:20180421230312j:plain

 

にほんブログ村 IT技術ブログへ
にほんブログ村