在Activeadmin中获取错误NoMethodError - 未定义的方法`login'

时间:2016-04-08 11:23:36

标签: ruby-on-rails ruby routes activeadmin

我正在使用管理员端的主动管理员。

我安装了active-admin gem并执行了rails g active_admin:install

之后我尝试打开admin的登录页面。我收到了这个错误。

  

NoMethodError - 未定义的方法`login'对于#:

2 个答案:

答案 0 :(得分:1)

请检查admin_user.rb的内容与以下内容类似;

class AdminUser < ActiveRecord::Base
  devise :database_authenticatable, 
  :recoverable, :rememberable, :trackable, :validatable
  attr_accessor :login
  attr_accessible :username, :email, :password, :password_confirmation, :remember_me, :login
  def self.find_for_database_authentication(warden_conditions)
    conditions = warden_conditions.dup
    login = conditions.delete(:login)
    where(conditions).where(["lower(username) = :value OR lower(email) = :value", { :value => login.downcase }]).first
  end
end

答案 1 :(得分:0)

简单地添加

attr_accessor:login

to admin_user.rb为我解决了这个问题。