我为我的身份验证系统实施了authlogic。我希望是否有方法通过“用户名”或“电子邮件”登录用户。此处提供的解决方案http://goo.gl/Ato1不起作用,因为我在数据库中没有“登录”字段。配置authlogic使用“用户名”或“电子邮件”登录
那么,我错过了数据库中的“登录”字段?或者有没有其他的方式来处理它?
登录应由用户名或电子邮件发生......
我为我的身份验证系统实施了authlogic。我希望是否有方法通过“用户名”或“电子邮件”登录用户。此处提供的解决方案http://goo.gl/Ato1不起作用,因为我在数据库中没有“登录”字段。配置authlogic使用“用户名”或“电子邮件”登录
那么,我错过了数据库中的“登录”字段?或者有没有其他的方式来处理它?
登录应由用户名或电子邮件发生......
你试试这个:
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
y那工作...!我想在那里登录是数据库中的一个领域...谢谢! – Madhusudhan 2010-08-11 16:31:38
有一个流行的authlogic教程,他们使用登录作为用户的主要帐户用户名字段。因此,讨论链接到登录的解决方案并且是用户模型的一个字段。也许它会导致混淆 - 你用登录登录...因此我的评论是我的答案中的一个参数。 http://github.com/binarylogic/authlogic_example – mark 2010-08-11 19:37:22
那么,登录来源,如果不从数据库? – 2010-08-10 23:26:09
它只是一个参数!它不在模型中... – Madhusudhan 2010-08-11 18:03:22