small medium large xlarge

Errata for Crafting Rails 4 Applications

 

The latest version of the book is P1.0, released about 2 years ago. If you've bought a PDF of the book and would like to upgrade it to this version (for free), visit your home page.

By default this page displays the errata for the latest version of the book. If you have a previous version, select it here:

If you've found a new error, please submit it.

  • Typo
  • Tech. error
  • Suggestion
  • Maybe next edition
  • Not a problem
  • Reported in: P1.0 (22-Mar-15)
#78270
PDF page: 22
The current image made me think they were just called for side-effects, but the code shows something else. Instead it could show flow of data through...more...
  • Reported in: B2.0 (08-Jul-13)
#52145
PDF page: 23
at the bottom of the page (23 printed on pdf or 34 in Preview): "should return The code tag should not be here.. This is exactly" I think it shou...more...
  • Reported in: B2.0 (08-Jul-13)
#52146
PDF page: 29

"Is the request send to the proper URL?"

use *sent* :

Is the request sent to the proper URL?
--Lucian Cancescu

  • Reported in: B5.0 (29-Oct-13)
#53085
PDF page: 30
Paper page: 30

555-555-0199@example.com--555-555-0199@example.com

  • Reported in: B2.0 (31-Jul-13)
#52286
PDF page: 32
The code: def initialize(attributes = {}) attributes.each do |attr, value| self.public_send("#{attr}=", value) end if attributes end ...more...
  • Reported in: P1.0 (21-Dec-13)
#55570
PDF page: 33
In the Validators section of Taking it to the Next Level, the reader is guided in creating a supposedly missing AbsenceValidator. This validator was a...more...
  • Reported in: B2.0 (28-Aug-13)
#52483
PDF page: 36
module MailForm class Base include ActiveModel::Conversion extend ActiveModel::Naming extend ActiveModel::Translation include ...more...
  • Reported in: B2.0 (26-Jun-13)
#52072
PDF page: 36

Acitve Model , should be Active Model--Thomas

  • Reported in: B2.0 (16-Jul-13)
#52197
PDF page: 52
Paper page: 42

... which we will consider to be The code tag should not be here. for now, and the locals variable ...--Lucian Cancescu

  • Reported in: P1.0 (21-Dec-13)
#56285
PDF page: 64

rails plug-in new handlers

s/plug-in/plugin/--Daisuke Goto

  • Reported in: B6.0 (07-Nov-13)
#53120
PDF page: 69
After typing code in templater/2_improving/test/integration/cms_test.rb file, running rake test, I get an error not finding ActiveSupport::Integratio...more...
  • Reported in: B6.0 (07-Nov-13)
#53121
PDF page: 69
Sorry for previous error reporting (#53120), it wasn't an error. Anyway, while reading the book and typing examples, it could be interesting to add...more...
  • Reported in: B6.0 (07-Nov-13)
#53122
PDF page: 77

$ rails plug-in new handlers
should be
$ rails plugin new handlers
(without dash)
--Christian Pennaforte

  • Reported in: P1.0 (16-Apr-14)
#76687
PDF page: 77

It says to override format and return nil, however, it looks like you need to override formats and return an array with nil.--Matt Martyn

  • Reported in: B6.0 (07-Nov-13)
#53123
PDF page: 86

$ rails g mailer --help
Seems to be broken in Rails 4.0.1 (works in Rails 3.2.12)--Christian Pennaforte

  • Reported in: B6.0 (07-Nov-13)
#53124
PDF page: 86
Sorry again : it works (I was not in the folder of my rails application). You wrote it (but maybe add "change to your dummy app folder", to avoid othe...more...
  • Reported in: P1.0 (24-Dec-13)
#56864
PDF page: 93
The current version of the Listen gem (2.x) must have start explicitly called on the value returned from Listen.to in order to start the listener. Eit...more...
  • Reported in: B1.0 (13-Jun-13)
#52006
PDF page: 135

The assert in navigation_test.rb should be assert_equal--Romeo Giezendanner

  • Reported in: P1.0 (03-May-14)
#76762
PDF page: 159

it says confsig.secret_key_base instead of config.secret_key_base on the third paragraph--Greta Mendoza Hidrogo

  • Reported in: P1.0 (30-Jun-14)
#76939
PDF page: 162
When I ran the integration test for the translator app, I kept getting the error ":pl is not a valid locale". Per the discussion at github.com/rai...more...
  • Reported in: B5.0 (30-Sep-13)
#52998
PDF page: 163

conf*s*ig.secret_key_base--Daisuke Goto

  • Reported in: B3.0 (31-Aug-13)
#52526
PDF page: 182

In the second full paragraph of the page where it says I18n.t("foo.bar") #=> "bar" it must say I18n.t("foo.bar") #=> "baz"--Iñigo Solano Pàez