【发布时间】:2012-07-06 06:36:05
【问题描述】:
假设我有 2 个应用程序使用相同的数据库(应用程序),并且我有一个字段说:cool,所以我想在第一个应用程序中使用这个字段但是不在第二个。那么如何避免这个错误 Can't mass-assign protected attributes without using attr_accessible in database(app) ?
【问题讨论】:
标签: ruby-on-rails mass-assignment
假设我有 2 个应用程序使用相同的数据库(应用程序),并且我有一个字段说:cool,所以我想在第一个应用程序中使用这个字段但是不在第二个。那么如何避免这个错误 Can't mass-assign protected attributes without using attr_accessible in database(app) ?
【问题讨论】:
标签: ruby-on-rails mass-assignment
我不确定我是否理解,但这是我通常做的:
protected_attribute = params[:blog_post].delete(:protected_attribute)
@blog_post = BlogPost.new(params[:blog_post])
@blog_post.protected_attribute = protected_attribute
if @blog_post.save
# ...
else
# ...
end
这很丑,但绕过了质量分配保护。
更新:您还必须从参数中删除受保护的属性。
【讨论】: