LoginSignup
0
0

More than 1 year has passed since last update.

railsチュートリアル第五章 名前付きルート

Posted at

名前付きルート

ルートを定義したことにより、レイアウトの中で名前付きルートが使えるようになりました
速、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ページに行けることを改めて感じた。
名前付きルートの名前はなんでもいいのかな?

演習

  1. 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機能を使ってこの演習で行った変更を元に戻してみてください。
元に戻した。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0