<%= %>記法
htmlファイル上で、rubyの記述ができるようになります。
sample.html.erb
<!DOCTYPE html>
<html>
<%= ruby構文の記述 %>
</html>
htmlファイル上であっても、<%= %>で囲んだ範囲内では、rubyと同じ記法で記述しても処理されます。
.erbや .slimなどのファイルでよく見かける記法です。
<%= yield %>記法
元となるhtml.erbファイル上に記載することで、他のファイルで記述したhtml.erbの内容を呼び出すことに使用していました。
サイトページのヘッダーなどを共通化した記述にしておいて、本文を<%= yield %>と記記述。
別のhtml.erbファイルに各ページの要素を記述します。
index.html.erb
<!DOCTYPE html>
<html>
<header>
〜
</header>
<body>
<%= yield %>
</body>
</html>
sample1.html.erb
<!DOCTYPE html>
<html>
<body>
<h2>はじめまして、もりくまです</h2>
</body>
</html>
sample2.html.erb
<!DOCTYPE html>
<html>
<body>
<h2>プログラミングの勉強をしています</h2>
</body>
</html>
上の例では、index.html.erbに記述された<%= yield%>が
他のファイルで記述された内容を呼び出す処理を行います。
「yield」について少し調べてみた所、「ブロック」という概念が出てきたので後日、詳しく勉強し、内容を更新します。
<%= link_to %>記法
リンクに飛ぶためのaタグと全く同じ機能を持った記述です。
html.erb
<link_to記法>
<%= link_to("トップページ", "/top") %>
<aタグ記法>
<a href = "/top">トップページ</a>
上の2つの記述は全く同じ内容で
「トップページ」というテキストに、「/top」のURL配下となっているページに飛ぶリンクを貼る機能を表します。
link_toの記法を用いた場合、
html.erb
<link_to記法>
<%= link_to("第1引数", "第2引数") %>
1,第1引数にテキスト内容
2,第2引数にリンク先の指定
が入る点に注意します。
今日はこのあたりで失礼します。
参考サイト
【Ruby】yield の役割
https://qiita.com/tzubasakat/items/749736e40161599ec6df