我有以下代码:
控制器
def update
@group = Group.find(params[:id])
@group_func = @group.functionalities
@functionalities_all = Funcionalidade.all
@func = params[:group][:update]
unless @group_func.include?(@func) do
@group_func << @func
end
end
查看
<div class="field">
<% options = @functionalities_all.collect{|f| [f.name, f.id]} %>
<%= f.select(:update, options, { :include_blank => true, :selected => nil}) %>
<%= button_to "Add" %>
</div>
当我向Rails组添加功能时,返回以下错误:
ActiveModel :: MassAssignmentSecurity :: GruposController中的错误#update
无法批量分配受保护的属性:更新
如果我尝试添加:更新到Model返回此错误:
未知属性:更新
有没有人遇到过类似的错误?
答案 0 :(得分:0)
在您的群组模型中,添加以下代码。
attr_accessible :update
Rails自然会保护属性不被分配而不会首先受到不受保护。 attr_accessible
取消保护它们,以便您可以在控制器中修改它们。如果您希望所有属性都可修改,请将attr_protected
添加到模型中。