首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用attr_accessible?

如何使用attr_accessible?
EN

Stack Overflow用户
提问于 2010-12-27 20:44:17
回答 2查看 2.8K关注 0票数 2

我找不到任何适合新手的教程。使用attr_accessible没有什么简单的规则吗?我是否应该将它用于用户可以从表单中设置的属性?

如果所有属性都可以从表单中设置,该怎么办?

我将感谢一个链接或简短的建议。我已经找到http://asciicasts.com/episodes/26-hackers-love-mass-assignment

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-12-27 21:07:53

attr_accessible是可以大量指定给模型的属性的白名单。这是一种需要显式列出所有属性的策略。这样,“开放端口”是众所周知的,并在模型中清楚地列出。这与attr_protected相反,后者是要防止批量分配的字段的黑名单。

通常,即使在中等到简单的应用程序中,也有一些外键类型字段,如user_id或company_id,这些字段可能不是由用户输入确定的。必须保护这些字段不受用户输入的影响。主键字段'id‘通常受Rails保护。

如果您的模型包含可以通过表单输入更新的所有列,那么请务必使用attr_accessible列出这些列(或者您可能希望跳过此特定模型的attr_accessible )。

但是,不要随波逐流,attr_accessible是一个好东西,并确保您在其他模型中使用它,这些模型可能不像您在问题中讨论的模型那样开放。

我通常在有大量列的模型上使用attr_protected,在大多数其他模型上使用attr_accessible。

票数 5
EN

Stack Overflow用户

发布于 2010-12-27 20:47:12

看看这个:Use attr_protected or we will hack you

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

https://stackoverflow.com/questions/4538721

复制
相关文章

相似问题

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