遵循ruby on rails 指南,开发人员无法批量分配受保护的字段,但尝试执行此操作时不会出现异常,对吗?new
但在我的情况下,通过应用程序中的方法批量分配不同的参数rails
:
@edition = Edition.new params[:edition]
引发以下异常:
ActiveModel::MassAssignmentSecurity::Error: Can't mass-assign protected attributes: price
为什么?我理解错了吗?这是一种不获得批量分配例外的方法吗?我认为在分配之前从哈希中删除受保护的属性并不方便。
更新:版本型号:
class Edition < ActiveRecord::Base
attr_accessible :title, :description
attr_protected :price
end
params[:edition].inspect
:
{"title"=>"t", "description"=>"d", "price"=>"123"}