-
app/Jobs/SendWelcomeEmail.php
Open in GitHubuse App\Mail\WelcomeMail; use App\Models\User; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Foundation\Queue\Queueable; use Illuminate\Support\Facades\Mail; class SendWelcomeEmail implements ShouldQueue { use Queueable; public function __construct(private readonly User $user) { } public function handle(): void { Mail::to($this->user)->send(new WelcomeMail($this->user)); } }
-
app/Models/Observers/UserObserver.php
Open in GitHubuse App\Jobs\SendWelcomeEmail; use App\Models\User; class UserObserver { public function created(User $user): void { SendWelcomeEmail::dispatchAfterResponse($user); } }
-
app/Models/User.php
Open in GitHubuse App\Models\Observers\UserObserver; use Illuminate\Database\Eloquent\Attributes\ObservedBy; #[ObservedBy(UserObserver::class)] class User extends Authenticatable implements FilamentUser { // ... }