Bubbleでパスワードリセット機能を実装する方法
ノーコードツール「Bubble」でユーザーのパスワードリセット機能を実装する方法をご紹介。
WorkflowのSend password reset emailやReset passwordを駆使して実装します。
実際に1工程ずつ実装していくと筆者にとっても大きな勉強になりました。Bubble初学者でパスワードリセット機能の作り方をキャッチアップしたい方の参考になれば幸いです。
実装イメージ
ログインページの「パスワードを忘れた方はこちら」をクリックしたらパスワード再設定用メール送信ページに移動。
メールアドレスを入れてボタンを押すと下のメールが送られてくる。
パスワード再設定用URLをクリックするとリセット用のフォームがある画面(reset_pw)へ遷移する。
パスワード変更後はログインページへ遷移させる。
実装手順
パスワードリセット機能は以下の手順で実装します。
- パスワードを忘れた方はこちらページを作成する
- 送信ボタンにWorkflowでSend password reset emailを設定する
- 送信ボタンにWorkflowのStep2でSend emailを設定する
- パスワードリセットページのWorkflowにReset passwordを設定する
- ログイン画面に「パスワードを忘れた方はこちら」という文言でテキストリンクを設置する
パスワードを忘れた方はこちらページを作成する
「reminder」というスクリーン名でパスワードを忘れた方はこちらページを以下のような構成で作成します。
パスワードリセットメール送信に最低限必要なエレメントはメールアドレス入力欄(Input)と送信するボタン(Button)です。無くてもいいですが、見出し下の文言はあった方が親切なので設置しました。テンプレ良ければ参考にしてください。
ご登録済みのメールアドレスを記入し、送信ボタンを押してください。
パスワード再設定用のURLが記載されたメールが届きますので、メールの案内に従いパスワードの再設定を行ってください。
送信ボタンにWorkflowでSend password reset emailを設定する
reminderページのレイアウトが完成したら次は、送信ボタンにWorkflowで[ Send password reset email ]を設定します。
[ Email to reset ]にはフォームに入力されたメールアドレスをセットします。Subject、Bodyは次のStep2で指定するのでここでは空のママでOKです。
次のStepでBodyにDynamic dataで挿入するトークンの取得に必要なので、[ just make token, don’t send email ]にチェックを入れます。
送信ボタンにWorkflowのStep2でSend emailを設定する
パスワード再設定用URLを記載したメールの文面など諸々設定します。
- To(宛先)には、Input メールアドレス’s valueつまりInputに入力されたメールアドレスをセットします
- Sender name(メール差出人)には、アプリ名や会社名などサービス管理者の名前などをご自身のプロジェクトに合わせて設定してください
- Subject(件名)には、「パスワード再設定用URLの送付」など分かりやすいメールタイトルをつけます
- Bodyには以下のテンプレ+先程のトークンを使用したURL(パスワードリセットURL)をセットします
パスワード再設定を受け付けました。
下記URLからパスワード再設定を行ってください。
▼パスワード再設定用URL▼
Website home URLreset_pw?reset=Result of step 1(Send password res...)
なお、URLは1回のみ有効ですのでご注意ください。
パスワード再設定用URLの「reset_pw?reset=」の部分はタイピング(もしくはペースト)して入れます。それ以外はDynamic dataで入れます。入力には少しコツが必要なのでうまく挿入できない方は以下の動画を見て真似してみていただきたいです。
パスワードリセットページのWorkflowにReset passwordを設定する
Bubbleではデフォルトで上記のようなパスワードリセットページのデザインが用意されています(スクリーン名はreset_pw)。
先程のメールに添付されたパスワード再設定用URLをクリックするとそのページに案内されます。
登録ボタンにWorkflowで[ Reset password ]を以下のように設定してあげます。
仕上げとしてWorkflowのStep2では、Go to pageでログインページへ遷移するように設定してあげると親切でしょう。
ログイン画面に「パスワードを忘れた方はこちら」という文言でテキストリンクを設置する
最後に、ログイン画面のログインボタン下に「パスワードを忘れた方はこちら」という文言でテキストリンクを配置して完成です。
WorkflowにはGo to pageでDestinationを先程作成したreminderページを指定してあげます。
完成です。お疲れ様でした!