TechAcademy Webアプリケーションコース(28日目)

先日に引き続きTwitterクローン作成のカリキュラムを進めた。

ログイン機能

〇ログインの仕組み
HTTP…ステートレスな通信(以前の通信を覚えていない)
ログインを維持できるのは、ブラウザ内部(ユーザ側) と サーバ(Webアプリ)
ブラウザ:ログイン情報は Cookie(クッキー) として保存
サーバ:持っているログイン情報は Session(セクション)として保存される

・Model なし。Rails が用意している Session システムによって管理

・Router
config/routes.rbファイルにsessions を記述

・Controller,View SessionsControllerの作成
$ rails g controller sessions new create destroy

・sessions#new 
Controller app/controllers/sessions_controller.rb
View app/views/sessions/new.html.erb
ナビバー app/views/layouts/_navbar.html.erb

・sessions#create 実質的にログイン処理を担当するアクション
Controller app/controllers/sessions_controller.rb
View app/views/toppages/index.html.erb
ナビバー app/views/layouts/_navbar.html.erb
Helper app/helpers/sessions_helper.rb

・sessions#destroy ログアウトを実装
Controller app/controllers/sessions_controller.rb
View app/views/layouts/_navbar.html.erb

・ログイン要求処理 
直接URLを指定してアクセスしても、ログイン画面が表示される

ログインの実装

こんな感じのページたちを作成しました。
今日はたくさんのファイルにコードを打ち込んだ(小並感)

明日は 投稿機能 の作成。
一対多の関係理解 テーブル設計・外部キー制約
Mode・Router・Controller・View のコーディング

明後日から
そして第一関門のログイン認証と一対多をタスク管理の課題を取り組めたらと思う。

この記事が気に入ったらサポートをしてみませんか?