karashi39とはいったい

夢と希望と明日と正義を讃える

ログイン画面をはじめてつくった

uzullaさんが執筆に参加した書籍「WEBアプリエンジニア養成読本」から、
Tinitterというアプリをつくった話はまだこのブログには書いていませんが、
だいたい本に書いてあることをやっただけという感じです。

そのTinitterに、ログイン画面を作りました。
本に書いてあることだけやっても、自分の力じゃないので、
管理系の画面でもつくってみようと思ったのがきっかけです。

まずはできたもの。

ログイン前はこんな感じで、
f:id:karashi39:20160415205656p:plain

右上のloginボタンを押すとこんな感じで、
f:id:karashi39:20160415205657p:plain

ログイン後はこんな感じ。
f:id:karashi39:20160415205701p:plain

logoutボタンに変わります。これを押すとログアウト。
ログイン情報が間違ってると、ちゃんとメッセージを出しますよ。


このログイン画面を作るにあたって、いろんなことを悩みました。
ググればすぐ作れるような感じですが、どうググっていいのかわからなかった。

  • セッションとかを利用すればいいの?
  • セッションをどう利用すればいいの?
  • ログイン情報はDBに入れないといけないよね

というあたりが、私の最初の印象。
というわけで、どうしたらいいのかわからなかったので、
いろんな意味での師匠であるaceさんと遊びに行った時、
かるく、ログインってどうすればいいんですかね?と聞きました。

子曰く、「ベーシック認証でいいんじゃないの?」とのこと。
ベーシック認証という言葉をここで初めて聞きました。
そして説明してもらって、セッションを使うにはどうしたらいいかも聞きました。
子曰く、「フレームワーク使ってるなら、それ+ログインとかでぐぐれば?」
フレームワークにログインのための機能があるということに、ここで初めて気づきました。

というわけで、slimのcookieをあれこれする機能を使って、
ログイン画面をつくったという次第です。
単なるログイン画面とはいえ、自分で考えてコーディングしたので、
脱初心者へ向け、一歩進んだという気持ちになりました。


ちなみに今回、はじめてGitHubも使ってみました。
私がTinitterに少し手を加えたKaratterはGitHubに上がっています。
テストとかどう書いていいのかわからないので、プルリクとかはこなさそうですが、
脱初心者へまた一歩近づいた気がします。
合計で二歩です。

今日はホークスも勝ったし、ログイン画面もできたし、
二歩進んだことを祝う一人打ち上げに行ってきます。


なお、次の目標は、テストコードを書くことです。
CIをやってみたいです。
プルリクもいつかもらえるようになりたいです。