首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >whitelist_attributes设置为false时出现批量分配错误

whitelist_attributes设置为false时出现批量分配错误
EN

Stack Overflow用户
提问于 2012-08-15 03:01:30
回答 1查看 1.5K关注 0票数 2

我目前正在将一个应用程序从Rails 2.3.8升级到Rails 3.2.7,并且在批量分配方面遇到了一些问题。

当我尝试保存任何模型时,我得到以下错误:

代码语言:javascript
复制
Can't mass-assign protected attributes: a,b,c,d

我注意到Rails将白名单属性的默认值设置为:

代码语言:javascript
复制
config.active_record.whitelist_attributes = false

因此,我将其更改为true,但错误不断出现。我们使用attr_protected来做一些事情,但它似乎忽略了这些,并保护了一切。我猜这是由于模型使用了'accepts_nested_attributes_for',但这些是必要的。

有没有其他方法可以不使用'attr_accessible‘来解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-15 06:32:57

无论何时使用attr_accessible或attr_protected,您都已为该模型启用了批量分配保护。如果正如你在评论中提到的那样,网站纯粹是供内部使用的,那么解决这个问题的唯一方法就是不使用attr_accessible,而是从模型中删除attr_protected,或者使用accepts_nested_attributes_for从模型中删除它涉及的任何模型。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11959025

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档