今ってどっち・・。

前々回でログイン・ログアウトの機能は実装できたものの 正直、URLの鍵のマークだけでは見た目的によろしくない。

ってことでセッション関係でログインしてるかしてないかを見極めて 部分的に見た目を変えようと思う。

んで、どこで見た目を変えるの?ってところ。

基本的にログインすればアカウントを作る必要もないし 再度ログインする必要もない。 実質、ログアウトだけでいいし・・。

なので、navbarのあたりを今回はいじる。

しかし、何をもってログインしてるかを判定するのかがまず第一。 これは調べてみたらdeviseで判定してくれるらしい。

前にdeviseをインストールした時に参照にしたページで ログイン判定するコードが書いてあったのでそれを試してみる。

スクリーンショット 2017-08-08 14.27.59.png

いや、英語わかんねぇよ←

とりあえず、真ん中らへんに書いてあるfollowing helperのあたりがそれっぽい気がする 駄菓子菓子、どうやってこれ使うんだよ・・。

しばし、瞑想・・🐣

あー。これifとelse使ったらいけるかな? ってことで、こんな感じにしてみた。

<% if (!user_signed_in?) %> <!-- ログインしてない時 --> <li><%= link_to "アカウント作成", new_user_registration_path %></li> <li><%= link_to "ログイン", new_user_session_path %></li> <% else %> <!-- ログインしてる時 --> <li><%= link_to "ログアウト", destroy_user_session_path, method: :delete %></li> <% end %>

これでどうやろか。。スクリーンショット 2017-08-08 14.49.09.png

お、ログインした時に狙い通りにログインとアカウント作成が消えてる! ついでにログアウトした時もみてみよう。スクリーンショット 2017-08-08 14.50.45.png

よし、今度は消えてた2つが出てきてログアウトが消えた。

んー、ついでにどのアカウントでログインしてるかもわかればいいよなぁ でも個別で判断できるのは今の所メールアドレスだけか。

ググったらすぐやり方が出てきた・・。

<li><%= link_to current_user.email %></li>

これをぶっこむだけで表示されるんか。。 とりあえずログアウトのコードの上にコピペして動作確認。スクリーンショット 2017-08-08 15.05.56.jpeg

よし、技量の無い修正やけどアドレスが表示されたのは確認できた。

一応これで見た目的にはまだわかりやすくなったか。。

ついでにbootstrapでボタン化できないか探してたら やり方が出てきたのでそれは次回にしよう。

ってことで今回はここまで。

ではー。

この記事をシェアする