share facebook facebook facebook twitter twitter menu hatena pocket slack

2021.03.30 TUE

Laravel Breezeでユーザー登録後にメールアドレスの確認メールが送信されるようにする

甲斐 甲

WRITTEN BY 甲斐 甲

Laravel Breezeを利用するととても簡単にログイン機能を実装することができます。ただ、ユーザー登録後にメールアドレスの確認メールを送信するには手動で実装する必要があったのでメモ。

前提

下記記事のプロジェクトを利用します。

Laravel SailとLaravel Breezeでさくっとログイン機能を実装する – Qiita
https://cloudpack.media/56069

GitHubリポジトリもありますので、ご参考ください。

実装

app/Models/User.phpUserクラスに対してMustVerifyEmailインターフェースを指定するだけで実現できます。

app/Models/User.php(一部抜粋)

<?php

namespace App\Models;

use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;

-class User extends Authenticatable
+class User extends Authenticatable implements MustVerifyEmail
{
    use HasFactory, Notifiable;

裏側でなにをしているのかは下記が詳しくまとめてくれています。(感謝

【Laravel】認証機能の実装方法(Laravel breeze)と処理内容の確認 – Qiita
https://qiita.com/yuta-38/items/360bde6654b6d32dd79e

動作確認

実際にユーザー登録してみるとメール送信されることが確認できました。

やったぜ

参考

Email Verification – Laravel – The PHP Framework For Web Artisans
https://laravel.com/docs/8.x/verification#model-preparation

Laravel Breeze – Sending Registration Emails + Email Customizations
https://laracasts.com/discuss/channels/laravel/laravel-breeze-sending-registration-emails-email-customizations

【Laravel】認証機能の実装方法(Laravel breeze)と処理内容の確認 – Qiita
https://qiita.com/yuta-38/items/360bde6654b6d32dd79e

元記事はこちら

Laravel Breezeでユーザー登録後にメールアドレスの確認メールが送信されるようにする

甲斐 甲

甲斐 甲

2018/7にJOIN。 最近の好みはサーバレスです。なんでもとりあえず試します。

cloudpack

cloudpackは、Amazon EC2やAmazon S3をはじめとするAWSの各種プロダクトを利用する際の、導入・設計から運用保守を含んだフルマネージドのサービスを提供し、バックアップや24時間365日の監視/障害対応、技術的な問い合わせに対するサポートなどを行っております。
AWS上のインフラ構築およびAWSを活用したシステム開発など、案件のご相談はcloudpack.jpよりご連絡ください。