У меня есть модель пользователя, в которой есть метод аутентификации.рельсы динамический метод find_by, не работающий в методе класса
Если я тестирую с помощью модели в рельсах, консоль может создать пользователя как можно точнее, а затем я смогу найти на нем электронную почту и вернуть пользователя в полном соответствии с этим.
user = User.find_by_email("[email protected]")
Теперь, если я пытаюсь вызвать метод аутентификации, как это и вернуть пользователь заявление пользователя помещает в моей аутентификации метод возвращает ноль
user = User.authenticate("[email protected]", "foobar")
Модель выглядит что-то вроде этого
class User < ActiveRecord::Base
attr_accessor :password
attr_accessible :first_name, :last_name,
:email, :birth_date, :sex,
:password, :password_confirmation
def self.authenticate(email, submitted_password)
user = find_by_email(email)
puts user #this returns nil so my class is never able to authenticate the user
return nil if user.nil?
return user if user.has_password?(submitted_password)
end
end
Я в затруднении по поводу проблемы. Некоторые из них видят в этом вопросе.
Это было истинное решение BTW. Я нашел его, прежде чем увидел ваше предложение. Хороший звонок. – mattwallace 2010-11-28 23:52:43