心はいつもAirPucci (空元気でもいいから)

毎日がPucciを着ているような気分

RailsTutorial4.0を高速で復習する。5.6章。演習2問目のつづき。

      2014/01/23


5.6章。演習2問目です。TDDにこだわり、あえてこの問題をするまで、ヘッダーやフッターのリンクを貼らずにすっ飛ばしてきました。リンクのテストを書いたので、いよいよリンクを貼って行きます。

トップページにあるSignupボタンをユーザー登録ページにリンクする

リスト5.35 ボタンをユーザー登録ページにリンクする。
app/views/static_pages/home.html.erb

略
  <%= link_to "Sign up now!", signup_path, class: "btn btn-large btn-primary" %>
略

テスト実行すると、Sign up nowリンクエラーは消えました。

ヘッダーナビのリンクを貼る

実はHomeリンクを #にしていてもエラーにならないんですよねー貼る場所が同じだから。なので、view書く前に本当はテスト書くべきだけど、それは難しいのか?ちょっと別途考えておく。

で、リンクはり。
リスト5.25 ヘッダーパーシャルにリンクを追加する。

略
<%= link_to "sample app", root_path, id: "logo" %>
      <nav>
        <ul class="nav pull-right">
          <li><%= link_to "Home",    root_path %></li>
          <li><%= link_to "Help",    help_path %></li>
          <li><%= link_to "Sign in", '#' %></li>
        </ul>
      </nav>
略

テスト実行すると、helpリンクエラーは消えました。
残るは、ContactとAbout usです。これらはフッターに
Sign inは8章で作るからそのまま。

フッターのリンクを貼る

リスト5.26 フッターパーシャルにリンクを追加する。
app/views/layouts/_footer.html.erb

略
      <li><%= link_to "About",   about_path %></li>
      <li><%= link_to "Contact", contact_path %></li>
      <li><a href="http://news.railstutorial.jp/">News</a></li>
略

テスト実行するとエラーはなくなりました。バンザイ!

テストコードが要リファクタリングな感じなのは追々なおしていきます。

view書いてリンクはった後にテストコード書いた箇所があるので、
どうすべきだったかは、課題として残ります。

つぎ3問目。

 - テクニカル ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  関連記事

no image
RailsTutorial4.0を高速で復習する。10.3章。

10.3マイクロポストを操作する、です。 仕様の理解 ポストはユーザーだけが投稿 …

no image
RailsTutorial4.0を高速で復習する。5.3.4章。

5.3.4RSpecを洗練させる、です。 確かに、名前付きルートに書き換えていて …

ジョジョ専用kindle fire HDの電源が入らない!

電源が入らない!MacBookAirが真っ黒になりました。とか、 iPhoneの …

rails gでのファイル名、クラス名、アクション名

rails gすると、コントローラーとアクションができますが、 その書き方とファ …

RailsTutorial4.0を高速で復習する。8.2.1章。

8.2.1[このアカウント設定を保存する]、です。 RailsTutorial4 …

no image
RailsTutorial4.0を高速で復習する。7.1.2章

7.1.2ユーザーリソース、です。 /user/newを/signupで表示させ …

初めてのRuby8章 8.4特異メソッドと特異クラス

特異メソッドと特異クラス プログラムなんて、クラスの継承だけで書けてしまうのが良 …

初めてのRuby8章 8.2変数と定数

8.2 変数と定数 8.2.1 インスタンス変数 @で始まるのがインスタンス変数 …

no image
RailsのRoutingいろいろ

コントローラーがAbc アクションがactrionxだとして、 http://y …

初めてのRuby8章「オブジェクトとクラス」

2章「配列とハッシュ」の次はいきなり8章「オブジェクトとクラス」に行ってしまいま …