『Ruby on Rails 5 初級①』改訂(2017年8月4日)

2017/08/03

2017年8月4日に、OIAX BOOKS の 『Ruby on Rails 5 初級①』のKindle版をRails 5.0.2に対応するため改訂しました。

3月18日の改訂を基準とすると、第 15 章の第 2 節「image_tagメソッド」にやや重要な修正があります。

また、Railsのバージョンを5.0.5に変更し、Rubyのバージョンを2.4.1に上げました。

Kindle電子書籍の改訂版を入手するには

ペーパーバック版に関して

現時点では、同書のペーパーバック版の改訂は予定されていません。以下変更点を列挙しますので、書籍の本文を読み替えることで対応してください。

第 1 章

P.17 で bundle コマンドを実行する前に Gemfile から末尾の3行を削除する手順を加えました。なお、この手順を省略しても深刻な問題は起きません。余分な警告が表示されないようにするための変更です。

第 9 章

rails5-primer-volume01.ch09.pdf を参照してください。

第 13 章

ソースコードに含まれる m-a-1m-3 に変更してください。以下の箇所にあります:

  • P.106 の index.html.erb の 4 行目
  • P.108 の about.html.erb の 4 行目
  • P.109 の index.html.erb の 4 行目

第 14 章

  • P.113 のソースコード 10 行目 New
変更前 <nav class="nav nav-inline m-b-1">
変更後 <nav class="nav nav-inline mb-1 justify-content-center">

ここで justify-content-center クラスの代わりに text-center クラスを指定しても、nav 要素の内側は中央寄せになりません。なぜなら、nav クラスの指定された要素の内側は Flexbox と呼ばれる方式でレイアウトされるからです。text-center は非 Flexbox 要素のためのクラスで、justify-content-center は Flexbox 要素のためのクラスです。ちなみに、右寄せする場合は、justify-content-end を使用します。

  • P.114 の本文 8 行目 New
変更前 m-b-1
変更後 mb-1

第 15 章

P.120 の show.html.erb

修正前

<div class="card m-a-1">
  <%= image_tag 'robot.svg', alt: 'Robot', size: '320x320' %>
    style: 'margin: auto' %>
<div class="card-block card-inverse card-success">

修正後

<div class="card m-3">
  <%= image_tag 'robot.svg', alt: 'Robot', size: '320x320'
    style: 'margin: auto' %>
<div class="card-block card-inverse card-success">

画像をカードの中央に表示するため、 6 行目で style オプションに対して margin: auto を指定しています。 CSS の margin プロパティに auto という値 を指定すると、その要素が水平方向に関して中央寄せされます。

P.121 の show.html.erb

修正前

  <%= image_tag 'robot.svg', alt: 'Robot', size: '320x320' %>
    style: 'width: 100%; max-width: 320px' %>

修正後

  <%= image_tag 'robot.svg', alt: 'Robot', size: '320x320' %>
    style: 'margin: auto; width: 100%; max-width: 320px' %>

以上です。