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>
次のような出力が行われる。
railsのビューの中には静的なHTMLがあるらしい。このため、railsの知識がなくても静的なページを修正可能となる。
2.provideメソッドとyieldメソッド
viewにおいてprovideメソッドとyieldメソッドは対の関係になっており、provideメソッドで変数から文字列を渡すことができる。
<% provide :title, 'タイトル' %>
yieldメソッドは変数をもとに文字列を表示するような意味を持つ。
<title><%= yield(:title)%></title>
3.<% ... %>と<%= ... %>
<% ... %>はコードの実行のみ。<%= ... %>ではコードを実行し、その実行結果がview部分に挿入される。