Micheal Hartl の Ruby on Rails Tutorial Book に従っています。sample_app に名前とメールが存在するかどうかの検証をテストしています。Rails コンソールで
user = User.new(:email => "user@example.com")
存在しない名前の値をテストしますが、見返りを得ています。
attr_accessible is extracted out of Rails into a gem.
Please use new recommended protection model for params(strong_parameters)
or add 'protected_attributes' to your Gemfile.
私のuser.rbは、
class User < ActiveRecord::Base
attr_accessible :name, :email
validates :name, :presence => true
validates :email, :presence => true
end
strong_parameters の使い方がわからないので、Gemfile に protected_attributes を次のように追加しました。
source 'https://rubygems.org'
gem 'protected_attributes'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.0.2'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 4.0.0'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.0.0'
gem 'therubyracer', platforms: :ruby
gem 'jquery-rails'
gem 'turbolinks'
gem 'jbuilder', '~> 1.2'
group :doc do
# bundle exec rake doc:rails generates the API under doc/api.
gem 'sdoc', require: false
end
group :test do
gem 'rspec'
end
group :development do
gem 'rspec-rails'
end
# Use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.1.2'
# Use unicorn as the app server
# gem 'unicorn'
# Use Capistrano for deployment
# gem 'capistrano', group: :development
# Use debugger
# gem 'debugger', group: [:development, :test]
検証を機能させるにはどうすればよいですか?