我为我的身份验证系统实现了authlogic。我希望是否有一种通过“用户名”或“电子邮件”登录用户的方法。此处提供的解决方案http://goo.gl/Ato1不起作用,因为我在数据库中没有“登录”字段。
那么,我错过了db中的“login”字段吗?还有其他任何处理方法吗?
登录应该通过用户名或电子邮件发生......
答案 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