如何告诉 Ruby (Rails) 忽略批量分配时存在的受保护变量?
class MyClass < ActiveRecord::Base
attr_accessible :name, :age
end
现在我将批量分配一个哈希来创建一个新的MyClass
.
MyClass.create!({:name => "John", :age => 25, :id => 2})
这会给我一个例外:
ActiveModel::MassAssignmentSecurity::Error: Can't mass-assign protected attributes: id
我希望它创建一个MyClass
具有指定(不受保护)属性的新属性并忽略该id
属性。
旁注:我如何也忽略未知属性。例如,MyClass
没有location
属性。如果我尝试批量分配它,请忽略它。