Ruby on rails 4 ActiveAdmin在更新任何资源时给出``参数(2代表1)``参数错误 问题是:

Ruby on rails 4 ActiveAdmin在更新任何资源时给出``参数(2代表1)``参数错误 问题是:,ruby-on-rails-4,activeadmin,Ruby On Rails 4,Activeadmin,当尝试通过ActiveAdmin界面更新资源时,我收到一个: ArgumentError in Admin::FoobarController#update wrong number of arguments (2 for 1) 我最近已将我的应用程序升级到Rails 4,并正在使用: gem 'rails', '~> 4.0.0' gem 'activeadmin', github: 'gregbell/active_admin' 进一步详情 我并没有以我所知道的任何方式重写控制器

当尝试通过ActiveAdmin界面更新资源时,我收到一个:

ArgumentError in Admin::FoobarController#update 
wrong number of arguments (2 for 1)
我最近已将我的应用程序升级到Rails 4,并正在使用:

gem 'rails', '~> 4.0.0'
gem 'activeadmin', github: 'gregbell/active_admin'
进一步详情 我并没有以我所知道的任何方式重写控制器行为。创建和删除资源是有效的。
我有大约8个资源,它们的行为方式都相同

完整跟踪:
我也遇到了这个问题,结果是ActiveAdmin初始值设定项中的遗留代码,我在RoR 3.2上为批量分配保护时将其放入了该初始值设定项中。因为我现在在RoR4上,所以这是由强参数处理的

@Michael Pell在对其原始问题的评论中提到的问题中的一位评论者

在我的特殊情况下,我的代码最初是按照fom的建议放入的,因此我必须从
config/initializers/active_admin.rb
中删除:

moduleActiveAdmin
  # REMOVE FROM HERE
  class BaseController
    def role_given?
      current_user.role
    end
    def as_role
      { as: current_admin_user.role.downcase.to_sym }
    end
  end
  # TO HERE

  # More initializer code down here
  # ...
end

似乎有问题,请尝试将此问题发布到
active\u admin
您是否找到过此问题的答案?从受保护的_属性到强_参数,我也遇到了同样的问题。我已经通过分叉和修改为自己解决了这个问题。也就是说,我还没有向active_管理员发出正式的请求,因此不会回答我的问题。以下是一个链接,指向我在开始时解释我所做的事情的问题:
moduleActiveAdmin
  # REMOVE FROM HERE
  class BaseController
    def role_given?
      current_user.role
    end
    def as_role
      { as: current_admin_user.role.downcase.to_sym }
    end
  end
  # TO HERE

  # More initializer code down here
  # ...
end