Ruby on rails attr_accessible,attr_accessior,我想知道他们是做什么的
我正在做Rails和面向对象编程的第一步。 有一点我很想理解:为什么我们需要模型中的Ruby on rails attr_accessible,attr_accessior,我想知道他们是做什么的,ruby-on-rails,attr-accessible,attr-accessor,Ruby On Rails,Attr Accessible,Attr Accessor,我正在做Rails和面向对象编程的第一步。 有一点我很想理解:为什么我们需要模型中的attr\u accessible 我曾读到,黑客可以使用大规模分配来更改数据库条目,从而压缩安全性,这就是敏感字段需要保护的原因(在本例中使用atribute\u protected) attr\u可访问与atribute\u受保护相反吗?如果是这样,为什么我们需要说明哪些字段是可访问的,哪些是不可访问的?defult不可以访问这些字段吗?那么,attr\u访问器用于什么 我注意到,如果我不允许某些字段,我的应
attr\u accessible
我曾读到,黑客可以使用大规模分配来更改数据库条目,从而压缩安全性,这就是敏感字段需要保护的原因(在本例中使用atribute\u protected
)
attr\u可访问
与atribute\u受保护
相反吗?如果是这样,为什么我们需要说明哪些字段是可访问的,哪些是不可访问的?defult不可以访问这些字段吗?那么,attr\u访问器
用于什么
我注意到,如果我不允许某些字段,我的应用程序将无法运行。我是否可以将attr_aceable用于敏感字段,如:password_digest和:admin
如果有人能给我解释一下,那就太神奇了
祝你一切顺利,
Timmynrails这里有几个概念混在一起,所以我将尝试解开它们
attr\u访问器
用于设置可读写属性。这相当于说attr\u reader
和attr\u writer
。因为你的问题不是直接关于属性访问器的,所以我只想说在上查看这个链接
根据Rails文档:
attr\u accessible
与attr\u protected宏相反
您认为这些方法用于防止大规模分配漏洞是正确的
说明哪些属性可以通过批量分配设置attr\u accessible
说明哪些属性不能通过批量分配设置attr\u protected
config.active_record.whitelist_attributes = true
在这种情况下,您应该经常使用attr\u accessible
和受保护的属性?如果你走了相反的路,在白名单属性上说false
,你将如何声明哪些属性不应该是大规模可分配的?如果你说的是attr\u protected
你是对的D
通常,您希望将:admin
等字段设置为attr\u protected
,因为您不希望攻击者进入并将其权限升级为管理员角色
集体作业不是一件容易做对的事情。大而聪明的开发团队已经弄错了这一点。所以,小心点,确保你明白发生了什么 多谢各位!现在清楚多了。我喜欢这个网站!