学習背景
現職でよくcontent_for
が記述されている箇所を見かけるものの、いまいちまだ理解しきれていなかったため、学習したメモを残します。
content_forとは
content_forは個別のビューで表示させたい内容を表示するのに使用されます。 例えば、各ページでタブの内容を変えたい場合、railsアプリを作成した際のデフォルトだと、application.html.erb
にtitleタグで 設定されているため、全ページ同じタブになってしまいます。
そのため、各ページで別のタブ名を表示するのに使用するのが、content_forです。 まずapplication.html.erbに赤線のように「yield :任意のキーワードのシンボル」を記述します。
そして、タブ名を変えたいページに以下のように記述することで実現できます。
<% content_for :任意のキーワードのシンボル do %>
表示したいERBの内容
<% end %>
そうするとタブには上記で指定したメッセージを表示することができます。