読者です 読者をやめる 読者になる 読者になる

ぞえの技術めも

Ruby on Rails勉強中

【72日目】【1日20分のRailsチュートリアル】【第8章】第8章向けの作業ブランチを作成

Ruby on Railsチュートリアル(第3版)

今日から第8章!

第8章 ログイン、ログアウト

第7章でWebサイトでの新規ユーザー登録が行えるようになりましたので、今度はユーザーがログインやログアウトを行えるようにしましょう。

ユーザーのログイン/ログアウトはシステムの要ですね。

本章では、アプリケーション全体で共通するログインシステムの細かい部分を多数扱うので、その分他の章に比べて長く、難易度も高くなっています。
(中略)
なお、多くの読者が「この章を2回通して完了すると学習効果が非常に高まった」との報告を寄せてくれています。皆さんも、可能であればこの章を2回通して行うことをおすすめいたします。

そうなのか…。まずは1回通してみよう。2回目は全部終わった後でいいかな?

8.1 セッション

ユーザーログインの必要なWebアプリケーションでは、セッションと呼ばれる半永続的な接続をコンピュータ間 (ユーザーのパソコンのWebブラウザとRailsサーバーなど) に別途設定します。
セッションはHTTPプロトコルと階層が異なる (上の階層にある) ので、HTTPの特性とは別に (若干影響は受けるものの) 接続を確保できます。

ふーむ、、この辺何となくしか知らないなぁ。。。チュートリアル進めていく上でさっぱりだったら別途勉強する必要があるかもなぁ。

sessionというRailsのメソッドを使用して一時セッションを作成します。この一時セッションは、ブラウザを閉じると自動的に終了します。
続いて8.4では、Railsの別のcookiesメソッドを使用して、もう少し長続きするセッションを追加します。

よくあるログイン機能はcookiesで実現されているとのこと。
チュートリアルでも最終的にはcookiesを使うんですね。

前章同様に、トピックブランチで作業してから、最後に更新をマージします。

その前に7.4 演習の内容をローカルにコミットしておこう。
(そのままブランチ作ったら演習の内容がindexに残ってたので)

$ git add -A
$ git commit -m "Solves exercise 7.1-7.4)"

リモートにはpushしない。(してもいいけど)

トピックブランチを作成します。

$ git checkout master
$ git checkout -b log-in-log-out

第8章を進めていく準備ができました。

今日の作業時間は【22分】

次は「8.1.1 Sessionsコントローラ」から。