配置authlogic以“用户名”或“电子邮件”登录

时间:2010-08-10 23:23:30

标签: ruby-on-rails authlogic

我为我的身份验证系统实现了authlogic。我希望是否有一种通过“用户名”或“电子邮件”登录用户的方法。此处提供的解决方案http://goo.gl/Ato1不起作用,因为我在数据库中没有“登录”字段。

那么,我错过了db中的“login”字段吗?还有其他任何处理方法吗?

登录应该通过用户名或电子邮件发生......

1 个答案:

答案 0 :(得分:9)

你试过这个:

class UserSession < Authlogic::Session::Base 
  find_by_login_method :find_by_username_or_email
end

并在user.rb

def self.find_by_username_or_email(login)
  find_by_username(login) || find_by_email(login)
end

#note login is only the parameter name and does not refer to your model