作成したindex.htmlが表示されない

今回はアプリケーションを作っている際にハマったことを記載する。

全てのページに表示させたいhtmlを以下のファイルに記載

app/views/layouts/application.html.erb
その後トップページとして以下のファイルに記載するのだが、表示がされない
app/views/pages/index.html.erb
ターミナル上を確認して見ると
Processing by PagesController#index as HTML
Rendering pages/index.html.erb within layouts/application
Rendered pages/index.html.erb within layouts/application (1.5ms)
Completed 200 OK in 32ms (Views: 28.4ms | ActiveRecord: 0.0ms)
と記載され、正常にapp/views/pages/index.html.erbが表示されない

<%= yield %>

調べてみるとapplication.html.erbに<%= yield %>が記載されていないため、他のhtmlが表示されなかったことがわかった
<%= yield %>
この役割は各ページの内容として別途作成されたhtmlファイルの内容を持ってくる
app/views/layouts/application.html.erbの中に<%= yield %>を記載することで、他のcontrollerで呼び出されたページを<%= yield %>で表示させることができる

今回の事象はエラーが表示されなかったため、苦戦しました。
トライアンドエラーをすることで勉強になるのですが、エラーが出ないものは難しいと思いました。初心者でなければわかることなんだろうと思います。

この記事が気に入ったらサポートをしてみませんか?