LoginSignup
6
3

More than 3 years have passed since last update.

そうだったのか、user_signed_in?メソッド

Posted at

はじめに

 プログラミングの学習を始めた頃から、ずっと思っていることがあります。メソッド名についてです。

 メソッド名、どこまでは、意味をもっているものなのかわからない問題。
メソッドは自分でも作れる故、どこまでが、意味を有しているのか、判断がつきません。この記事では、今までuser_signed_in?メソッドは全てに意味を有していると思っていたが、そうではなかったことを紹介しています。

deviseとは

 Rubyで扱うことができる、gemの一つで、ユーザー管理機能がまとまっていて、簡単にログイン機能等を実装できる、便利なgemです。

いつもの流れ

deviseを使ってユーザー管理を行うときに、ターミナルで、モデルやコントローラー、ビューを生成させます。
例)


rails g devise user

そう、いつもuserをモデル名やコントローラー名にしています。

user_signed_in?メソッド

 ユーザーがサインインしているかを確かめるためのメソッドで、
サインインしている状態だと、ture
ログアウト状態だと、false
が返ってきます。
そのため、if文と合わせて、サインインしているユーザーとサインインしていないユーザーで表示させるものを分岐させるときによく使います。

user_signed_in?のuserには意味がない?


rails g devise admin

 私は、deviseでuserとadminのモデルやコントローラーを作成しました。そこで、adminにだけ表示させたいときは、どうすればいいのか、悩みでした。

user_signed_in?のuserの部分は変更可能!!

admin_signed_in?にしてもエラーにはなりませんでした。

6
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
3