Я совершенно сбит с толку. Я изучаю Rails 4, и это возвращает пользовательские записи, как и ожидалось:
irb(main):002:0> User.all
Но это возвращает nil
irb(main):004:0> User.authenticate('asdfdsf', 'asdfdas')
Вот метод класса в модели:
def self.authenticate( email, password )
user = User.all #( email: email )
puts user
# if user && (user.hashed_password == User.hash_with_salt( password, user.salt ) )
# return user
# else
# return false
# end
end
Я что-то упускаю? Разве они оба не должны возвращать одно и то же? Почему я не могу вернуть пользовательский объект с помощью .find() или .where() внутри метода класса?
Обновление: вот схема моей таблицы пользователей:
create_table "users", force: true do |t|
t.string "first_name"
t.string "last_name"
t.string "email"
t.datetime "created_at"
t.datetime "updated_at"
t.string "hashed_password"
t.string "salt"
end
relaod!
? - person emersonthis   schedule 27.08.2013