我目前正在将应用程序从Rails 2.3.8升级到Rails 3.2.7,并且在批量分配时遇到了一些麻烦。
当我尝试和保存任何模型,我得到以下错误:mass-assignment error with whitelist_attributes设置为false
Can't mass-assign protected attributes: a,b,c,d
我注意到,Rails的已设置默认为白名单属性:
config.active_record.whitelist_attributes = false
所以我改成了真实,但错误不断出现。我们使用attr_protected做了一些事情,但似乎忽略了这些并保护了所有内容。我猜这是因为使用'accep_nested_attributes_for'的模型,但这些都是必要的。
有没有其他方法可以解决这个问题,而不使用'attr_accessible'?
'attr_accessible'是为模型启用质量分配的属性。你有什么理由避免使用它? – 2012-08-14 19:03:19
这是一个非常大的应用程序,因此将所有内容都更新到最新状态需要一段时间,而且该网站纯粹用于公司内部使用,所以安全性并不是什么大问题。 – Aaronneyer 2012-08-14 19:25:39