ActiveModel :: MassAssignmentSecurity :: ActiveAdmin中的错误仅在新创建的模型上

时间:2013-06-07 13:04:35

标签: ruby-on-rails ruby-on-rails-3 activeadmin

我为ActiveAdmin启用了许多模型,即他们使用默认行为注册ActiveAdmin并且运行良好。

当我生成新模型和关联的active_admin资源时,它会显示以下错误

rails g model log body:text
rails g active_admin:resource log
rake db:migrate

然后尝试从管理界面创建新的日志记录,它显示以下错误

ActiveModel::MassAssignmentSecurity::Error in Admin::LogsController#create

Can't mass-assign protected attributes: body
Rails.root: /Users/amitamb/sdtexty

Application Trace | Framework Trace | Full Trace
Request

Parameters:

{"utf8"=>"✓",
 "authenticity_token"=>"wpTnR0B8qLphaxAyp/G9EuA4Gw+gZpwrdNjcYwvd3YY=",
 "log"=>{"body"=>"af"},
 "commit"=>"Create Log"}
Show session dump

Show env dump

Response

Headers:

None

注意:日志模型中存在attr_accessible:body

1 个答案:

答案 0 :(得分:0)

这是我的错误。

我在active_admin.rb初始化程序

中添加了以下代码
module ActiveAdmin
  class BaseController
    with_role :admin
  end
end

我忘了在:as => :admin

中使用attr_accessible