####名前付きルート
ルートを定義したことにより、レイアウトの中で名前付きルートが使えるようになりました
速、link_toメソッドの2番目の引数で、適切な名前付きルートを使ってみましょう。
<%= link_to "About", '#' %>
置き換え
<%= link_to "About", about_path %>
HomeページとHelpページへのリンクを持つheaderパーシャル _header.html.erbから取り掛かります。
headerパーシャルでは、Web共通の慣習に従って、ロゴにもHomeページへのリンクを追加
#####headerパーシャルにリンクを追加する
<header class="navbar navbar-fixed-top navbar-inverse">
<div class="container">
<%= link_to "sample app", root_path, id: "logo" %>
<nav>
<ul class="nav navbar-nav navbar-right">
<li><%= link_to "Home", root_path %></li>
<li><%= link_to "Help", help_path %></li>
<li><%= link_to "Log in", '#' %></li>
</ul>
</nav>
</div>
</header>
#####footerパーシャルにリンクを追加する
<footer class="footer">
<small>
The <a href="https://railstutorial.jp/">Ruby on Rails Tutorial</a>
by <a href="https://www.michaelhartl.com/">Michael Hartl</a>
</small>
<nav>
<ul>
<li><%= link_to "About", about_path %></li>
<li><%= link_to "Contact", contact_path %></li>
<li><a href="https://news.railstutorial.org/">News</a></li>
</ul>
</nav>
</footer>
変更後プレビューで確認 成功
名前付きルートを書いてない部分はクリックしてもアクセスできない。
about_path
を書いていないとabout
ページにいけない。
しかし/about
と書くとabout
ページに行ける。
link_to
でクリックするとabout
ページに行けることを改めて感じた。
名前付きルートの名前はなんでもいいのかな?
####演習
- helfルーティングを作成し、レイアウトのリンクを更新してみてください。
Rails.application.routes.draw do
root 'static_pages#home'
.
.
.
get '/helf', to: 'static_pages#helf'
end
<footer class="footer">
<small>
The <a href="https://railstutorial.jp/">Ruby on Rails Tutorial</a>
by <a href="https://www.michaelhartl.com/">Michael Hartl</a>
</small>
<nav>
<ul>
<li><%= link_to "About", about_path %></li>
<li><%= link_to "Contact", contact_path %></li>
<li><%= link_to "Helf", helf_path %></li>
<li><a href="https://news.railstutorial.org/">News</a></li>
</ul>
</nav>
</footer>
2.Undo機能を使ってこの演習で行った変更を元に戻してみてください。
元に戻した。