部分テンプレートとは
viewファイルで同じHTML構造の部分を共通化したもの
例えばwebサイトのヘッダー部分や、ブログ記事の一覧表示画面の各投稿のレイアウトなども多くが共通していますよね
使用するメリット
・共通化することで何度も同じコードを書く必要がない
・修正する際の修正箇所が少なく済む
・他のviewファイルで使い回すことができる
使用方法
まずは共通化している部分を部分テンプレートのファイルに書き換えます。
ファイル名の前には必ず「 _ (アンダーバー)」を書きます
「_post.html.erb」 など。
あとは呼び出しをするだけですが、この際 render メソッドを使用します。
index.html.erb
<% render partial: "post" %>
partial オプションは部分テンプレート名の指定をしています。
また、部分テンプレート内で変数を扱いたい場合は locals オプションを使用します。
<% render partial: "部分テンプレート名", locals: { 変数: 値 } %>