ruby-on-rails - 'attr_accessible' 效果

标签 ruby-on-rails ruby ruby-on-rails-3 methods attr-accessible

我正在使用 Ruby on Rails 3.0.9,我想知道 attr_accessible 方法在哪些情况下(即对于哪些方法)有效。例如,如果我使用

attr_accessible :name, :surname

当您对 User.new(params[:user]) 语句使用 new(...) 方法时,它会注意不要分配这些属性值.

但是它会处理哪些其他方法? 我能否正确运行,例如,where(...) 存在的方法?(...) 否则 attr_accessible 会生效吗?

最佳答案

如果您使用 attr_accessible,该模型将阻止对那些未包含在 attr_accessible 列表中的列进行批量分配。受影响的方法是那些批量赋值,如newcreateupdate_attributesattributes= 等。所有其他函数都可以工作,甚至像这样的单个赋值:

@model_object.column_not_listed_in_attr_accessible_list = "Saved"
@model_object.column_not_listed_in_attr_accessible_list
=> "Saved"

因此,在whereexists?等地方使用它们应该没有任何问题。

关于ruby-on-rails - 'attr_accessible' 效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7104952/

相关文章:

ruby-on-rails - Active Admin 类型错误 - Ruby on Rails

ruby - 在 Active Admin Gem 中显示 ID 而不是名称

mysql - 具有 2 个不同可连接条件的 Ruby 查询

ruby-on-rails - 覆盖 postgresql 数据库

ruby-on-rails - 电子邮件附件

css - 在 Rails 中设置第二个自动 .sccs => .css 文件

ruby-on-rails - 如何防止 Rails 中的浏览器页面缓存

ruby-on-rails - 密码验证中断设计确认

ruby-on-rails-3 - 使用 Keen.io 创建分析面板 - 如何防止 Google 和 Bing 机器人创建的事件

javascript - Rails 中的 ruby​​ vs js 字符串连接