ActiveAdmin :: Devise :: SessionsController #creore中的ArgumentError

时间:2012-03-08 05:48:13

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

我安装了ActiveAdmin并使用默认的管理员名称和密码登录,但出现错误并希望有人可以帮助我。谢谢!

以下是错误:

ArgumentError in ActiveAdmin::Devise::SessionsController#create 
wrong number of arguments (2 for 1)
Rails.root: E:/Ruby/challenger2 - Copy

Application Trace | Framework Trace | Full Trace
app/helpers/sessions_helper.rb:2:in `sign_in'

sessions_helper.rb文件的一部分:

module SessionsHelper
  def sign_in(user)

    self.current_user = user    
  end

  def current_user=(user)
    @current_user = user
  end

  def current_user
    @current_user ||= user_from_remember_token
  end

  def signed_in?
    !current_user.nil?
  end

end

1 个答案:

答案 0 :(得分:15)

gem Devise,Active Admin依赖,可能使用“sign_in”函数 - 此名称具有SessionsHelper模块的成员函数之一。 这导致调用错误的函数。 一个解决方案是不使用activeadmin作为管理工具))) 另一个是将“sign_in”函数全局重命名为“sign_in_”,例如

并且不要忘记重新启动服务器:它会不时地帮助