ArgumentError в ActiveAdmin :: Devise :: SessionsController # create - PullRequest
3 голосов
/ 08 марта 2012

Я установил 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'

Часть файла session_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 Ответ

15 голосов
/ 16 апреля 2012

gem Devise, от которого зависит Active Admin, возможно, использует функцию "sign_in" - это имя имеет функцию одного из членов вашего модуля SessionsHelper.это вызывает неправильную функцию.Одно из решений заключается в том, чтобы не использовать activeadmin в качестве инструмента администратора))), а другое - глобально переименовать функцию «sign_in» в «sign_in_», например

, и не забудьте перезапустить сервер: это помогает извремя от времени)

...