改訂新版 基礎Ruby on Rails 正誤表
2012/02/25
『改訂新版 基礎Ruby on Rails』 読者サポートページ
最終更新日:2015年1月28日
多くの間違いを指摘してくだされた本多様、田中様に感謝いたします。
第1刷
P7 表
P7 表「Railsのバージョン」
誤 3.1 2011/04/31 正 3.1 2011/08/31
P169 本文
P169 本文4行目(2013-04-15追加)
誤 また、「t.boolean :gender」に付いている 正 また、「t.integer :gender」に付いている
この間違いは第2刷でも残っています。
P195 コロンの抜け
「collection」と「member」の前にコロンが必要です。
P195 2つ目の青い枠線(2012-04-13追加)
誤 get "search", on: collection 誤 get "restore", on: member 正 get "search", on: :collection 正 get "restore", on: :member
P281, P402 二重引用符の抜け
P281 2つ目のLIST
正 errors: messages: invalid_member_name: "は半角英数字で入力してください(_も使えます)。" expired_at_too_old: "は掲載開始日より新しい日時にしてください。"
P402 3つ目のLIST
正 errors: messages: invalid_member_name: "は半角英数字で入力してください(_も使えます)。" expired_at_too_old: "は掲載開始日より新しい日時にしてください。" too_big_image: "が大きすぎます(最大64KB)。" invalid_image: "の形式が違います(JPEG、GIF、PNGのどれかにしてください)。"
P248, P281, P402で、ja.yml内のエラーメッセージに二重引用符が付いていたり、いなかったりしています。二重引用符を付けるほうで統一してください。YAMLでは、長めのテキストは二重引用符で囲むほうがいいでしょう(空白文字が含まれることがあるため)。
P300, 349 フラッシュメッセージの付け忘れ
フラッシュnoticeを加えてください。
P300 2つ目のLIST
誤 redirect_to :articles 正 redirect_to :articles, notice: "ニュース記事を削除しました。"
P349 4つ目のLIST
誤 redirect_to :admin_articles 正 redirect_to :admin_articles, notice: "ニュース記事を削除しました。"
P301, 326, 337, 347, 350 LISTのファイル名の間違い
P301 1つ目のLIST (2012-04-07追加)
誤 chapter7¥test¥functional¥articles_controller_test.rb 正 chapter7¥test¥functional¥top_controller_test.rb
P301 2つ目のLIST (2012-04-07追加)
誤 chapter7¥app¥controllers¥articles_controller.rb 正 chapter7¥app¥controllers¥top_controller.rb
P326 1つ目のLIST
誤 chapter8a\db\migrate\20120113024328_modify_members1.rb 正 chapter8a\db\migrate\20120126092514_modify_members1.rb
P337 LIST (2013-03-05訂正)
誤 chapter8a\test\integration\login_logout_test.rb 正 chapter8a\test\integration\user_authentication_test.rb
P346 LIST 3つ目 (2013-09-11訂正)※ 第2刷にも残っています。
誤 chapter8b\app\views\members\admin\show.html.erb 正 chapter8b\app\views\admin\members\show.html.erb
P350 LIST 1つ目~3つ目 (2012-06-15 追加)
誤 chapter8b\app\views\admin\members\show.html.erb 正 chapter8b\app\views\admin\articles\show.html.erb
誤 chapter8b\app\views\admin\members\new.html.erb 正 chapter8b\app\views\admin\articles\new.html.erb
誤 chapter8b\app\views\admin\members\edit.html.erb 正 chapter8b\app\views\admin\articles\edit.html.erb
P315 Sass
「20」に単位pxを加えてください。
P315 LISTのdiv#content { ~ } 内
誤 width: $container_width - $sidebar_width - 20; 正 width: $container_width - $sidebar_width - 20px;
P318 jQuery
P318 LIST 2つ目 (2013-09-11 追加) ※ 第2刷にも残っています。
誤 if $("#article_no_expiration").attr("checked") 正 if $("#article_no_expiration").prop("checked")
P169 本文
P326 本文3行目(2015-01-28追加) ※ 第2刷にも残っています。
誤 を記述します。 正 を記述します。ただし、323ページで追加したattr_accessor :password, ...よりも下に挿入してください。
P333 ハッシュの表記
本書では、キーがシンボルのハッシュの要素を「キー: 値」のように、Ruby 1.9の書き方で統一しています。
P333 本文
誤 ファインダーメソッド「where(:member_only => false)」を加えて、 正 ファインダーメソッド「where(member_only: false)」を加えて、
P333 3つ目のLIST
誤 member.kind_of?(Member) ? rel : rel.where(:member_only => false) } 正 member.kind_of?(Member) ? rel : rel.where(member_only: false) }
P347, 351 本文中のフォルダ名の間違い
P347 本文 (2012-04-21追加)
誤 ■ app¥controllers¥membersフォルダの下から、 正 ■ app¥views¥membersフォルダの下から、
P351 本文 (2012-04-21追加)
誤 ■ app¥controllers¥articlesフォルダの下から、 正 ■ app¥views¥articlesフォルダの下から、
P351, 411, 421, 423, 427 修正しないとサンプルが正しく動作しない、あるいはエラーが出る間違い
P351 下のLIST、4行目 (2012-04-21追加)
誤 <% if @articles.empty? %> 正 <% if @articles.present? %>
P411 下のLIST、5行目 (2012-04-21追加)
誤 <% if @current_member == @member %> 正 <% if @current_member && @current_member == @member %>
P421 1番下のLIST、3行目 (2012-04-13追加)
誤 { member: member, 正 { author: member,
P424 1番下のLIST、下から4行目 (2012-04-13追加)
誤 <% if @current_member.votable_for?(@entry) %> 正 <% if @current_member && @current_member.votable_for?(@entry) %>
P427 1番下のLIST、1行目 (2012-04-21追加)
誤 <% if @current_member == @member %> 正 <% if @current_member && @current_member == @member %>
細かい間違い
P24 HINT「Gemfileの編集」
誤 factony_girl 正 factory_girl
P29 表「フォルダの役割」(続き)6行目 ※ 第2刷にも残っています。
誤 vender 正 vendor
P82 1つ目のRESULTの2行目
※紙面の結果は、2012年1月26日に実行した、という設定のものです。
誤 2012-01-26 20:45:28 +0900 正 2012-01-16 20:45:28 +0900
P88 LISTの末尾から3行目
誤 puts robo1 正 puts robo1.to_s
※ putsメソッドに文字列以外のオブジェクトを引数として渡した場合、暗黙裏にそのオブジェクトのto_sメソッドを呼んで文字列に変換します。したがって、本来この訂正は不要ですが、本文中にputsメソッドの仕様に関する説明がなく分かりにくいため、このように訂正します。第2刷にも残っています。
P88 LISTの末尾から1行目
誤 puts robo2 正 puts robo2.to_s
※ 第2刷にも残っています。
P131 HINT「link_toの引数での特殊文字」のソース
※<p>が余計です。
誤 → <p><a href="/">&lt;b&gt;Top&lt;/b&gt;</a> 正 → <a href="/">&lt;b&gt;Top&lt;/b&gt;</a>
P240 本文1行目 (2013-12-07追加)※ 第2刷にも残っています。
誤 _from.html.erbの先頭に 正 _form.html.erbの先頭に
P278 本文下から2行目 (2012-04-07追加)
誤 valid?メソッドを呼び出したあとで 正 invalid?メソッドを呼び出したあとで
P325 本文5-6行目 (2013-04-17追加)
※パッケージ名から「c」が抜けています(2カ所)。
誤 Gemパッケージのbrypt-rubyを使うのが便利です。Gemfileにはbrypt-rubyの設定が 正 Gemパッケージのbcrypt-rubyを使うのが便利です。Gemfileにはbcrypt-rubyの設定が