読者です 読者をやめる 読者になる 読者になる

ActiveModel::MassAssignmentSecurity::Error in ProductsController#create

編入も終わりやりたかったことの一つ,Webプログラミングに手を出している.
そこで「RailsによるアジャイルWebアプリケーション開発 第4版」の写経を行いながら理解を深めよう作戦を行なっている.躓いた部分を忘備録のためにメモ.

 

開発環境は
Ruby 1.9.2
Rails 3.2.12

P75 イテレーションB1:検証!

モデルクラス,product.rbのコードの書き換えのところで

class Product < ActiveRecord::Base
end

class Product < ActiveRecord::Base
validates :title, :description, :image_url,presence: true
end 

に書き換えろとあるが,そのまま書き換えると

f:id:alice345:20130617004729j:plain

 

こんな感じのエラーが出てきた.
原因は,product.rbの書き換えにあった.

ソースは元々

class Product < ActiveRecord::Base
attr_accessible :description, :image_url, :price, :title
end
となっていたのだが,本には
attr_accessible :description, :image_url, :price, :title
の部分の記述が無かったので消してしまったことが原因だった.

正しくは

class Product < ActiveRecord::Base
attr_accessible :description, :image_url, :price, :title
validates :title, :description, :image_url, presence: true
end
のようだ.
私の読解力が低さが露呈した.