プログラミング初心者の備忘録です。
間違った部分がありましたらご指摘いただけると幸いです。
パーシャルとは
細かい部分のHTMLを共通化できる機能。
表示ページが多い時などに繰り返し使用したいHTMLのコードをパーシャルファイルに記述することにより、読み込み用コードを埋め込むだけでそのHTMLコードを呼び出すことができる。
環境
macOS
rails 6.1ver
1.パーシャルを作成する
パーシャルの作成にはルールがあります。
・viewsディレクトリ内にsharedディレクトリを作成し、その配下にパーシャルのファイルを作成すること
・パーシャルファイルの先頭はアンダースコア(_)をつけること
今回はパーシャルファイル名を_hello.html.erbとします。
<div class="hello">
<h3>HELLO</h3>
<p>これはパーシャルで呼び出した文章です</p>
</div>
class名にはアンダーバーと拡張子を除いたファイル名を記述してください。
2.パーシャルを使用する
renderメソッドを使用することでパーシャルファイルを読み込むことができます。
試しにindex.html.erbファイルの中にコードを埋め込んでみます。
<h1>テストページです</h1>
<%= render "shared/hello" %>
パーシャルファイルを呼び出す際もアンダーバーと拡張子を除いたファイル名を記述します。
これをブラウザで確認すると下記の表示になります。
無事にパーシャルファイルを呼び出せていることが確認できました。
まとめ
共通化の自由度が高く好きな場所に埋め込み使い回すことができるので、非常に便利な機能だなと感じました。