Ruby on Rails のdeviseのConfirmableを使うと使わないでどう挙動が変わるのか?
Ruby on RailsのdeviseのConfirmable有無の違い
deviseのConfirmableなし(デフォルト)
メール認証がない状態でログイン処理ができます。
処理の流れは以下の通り。
- ユーザー登録画面。
- メールアドレス、パスワード入力。
- ログイン可能状態。
- 完了。
これだけです。メールアドレスは何でも入れたい放題になってしまいます。
deviseのConfirmableあり
メール認証ありの場合です。
以下の設定を行います。
- migrationファイルの「## Confirmable」コメント以下を有効化。
- deviseのmodel(usersとか…)のmodel/xxxx.rbでdeviseに「 :confirmable」を追加
処理の流れは以下の通り。
- ユーザー登録画面。
- メールアドレス、パスワード入力。
- このタイミングではまだログインできない。
- メールのURLクリック。
- ログインできるようになる。
- 完了。
メールで承認後ログインができるのでこちらのほうがいいですね!