イヌケンの技術ブログ

私が学んだ技術について備忘録的に書いていきます。

Rails-Tutorial 3章の備忘録

本記事では第3章で気づいたことでの備忘録です。

1.GETリクエス

 config/routes.rbの以下のruby文の解釈の仕方について。

get 'static_pages/home'

上記の文は/static_pages/homeというURLに対してGETリクエストを行った時、StaticPagesコントローラのhomeアクションを実行してWebページを表示するという意味を持つ。
具体的には/static_pages/homeのURLにアクセスすると、①StaticPagesコントローラのhomeアクションに記述されているコードを実行する。その後、②そのアクションに対するビューを出力する。今回の場合はhomeアクションが空のため出力なし、ビューであるhome.html.erbは以下のようなコードが記載されているため、

<h1>StaticPages#home</h1>
<p>Find me in app/views/static_pages/home.html.erb</p>

次のような出力が行われる。
f:id:inukenta:20190122004533p:plain
railsのビューの中には静的なHTMLがあるらしい。このため、railsの知識がなくても静的なページを修正可能となる。

2.provideメソッドとyieldメソッド

viewにおいてprovideメソッドとyieldメソッドは対の関係になっており、provideメソッドで変数から文字列を渡すことができる。

<% provide :title, 'タイトル' %>

yieldメソッドは変数をもとに文字列を表示するような意味を持つ。

<title><%= yield(:title)%></title>

3.<% ... %>と<%= ... %>

<% ... %>はコードの実行のみ。<%= ... %>ではコードを実行し、その実行結果がview部分に挿入される。