Help us understand the problem. What is going on with this article?

railsのsessionについて

railsチュートリアルで、以下の部分の理解が甘かったので、自分なりに解釈してみました。

user = User.find_by(email: params[:session][:email].downcase)
    if user && user.authenticate(params[:session][:password])
user = User.find_by(email: params[:session][:email].downcase) 

では、downcaseメソッドを使って、大文字を小文字にすべて変換させて、大文字小文字関係なく、メールアドレス自体が合っていたらokとしている(?)
入力されたメールアドレスから、Userモデルから該当するメールアドレスを持っているユーザーを検索して、見つけたらuserに代入する。

if user && user.authenticate(params[:session][:password])

は、もし該当するメールアドレスを持っているユーザーがいて、かつ入力されたパスワードが合っていたら、、、という意味ではないかと解釈しました。

独学の身なので、もし間違った解釈をしている、もっとこう考えた方がいい、という方がいらっしゃいましたら、、教えていただけると幸いです。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away