PostgreSQL的属性我有一个简单的声明是这样的:更新布尔从轨
@employee.update_attributes(:subscribed=>false)
但这不是更新boolean
列字段subscribed
。它抛出一个警告说:
WARNING: Can't mass-assign these protected attributes: subscribed
PostgreSQL的属性我有一个简单的声明是这样的:更新布尔从轨
@employee.update_attributes(:subscribed=>false)
但这不是更新boolean
列字段subscribed
。它抛出一个警告说:
WARNING: Can't mass-assign these protected attributes: subscribed
我会建议使用#update_attribute,不#update_attributes。 #update_attribute(单数)接受两个参数:属性名称和值。这是为了翻转布尔值,或更新单个值。 #update_attribute的语义也意味着回调不会被触发。
从你的代码,这是一个简单的变化:
@employee.update_attribute(:subscribed, false)
现在,为什么你的代码失败的真正原因是因为你有你使用#attr_accessible或在您的员工的模型#attr_protected其中某处。使用#attr_accessible有助于防止注入攻击,只允许某些字段从#attributes =(这是#update_attributes最终调用的内容)分配。警告来自#attributes =。
需要attr_accessible :subscribed
> _ <