اذهب إلى المحتوى
  • 0

التحقق من البريد الإلكتروني في Laravel

Mahmoud Alrashidi

السؤال

كيف يُمكن إتاحة التحقق من البريد الإلكتروني في مشروع لارافيل استخدم حزمة Laravel/ui و أريد تفعيل هذه الخاصية فإذا لم يُفعل المُستخدم حسابه عن طريق التحقق من البريد لا يستطيع تصفح خصائص التطبيق.

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1

توفر لارافيل هذه الخاصية مُسبقاً و ما عليك إلا تفعيلها في المشروع و يتم ذلك عن طريق:

تطبيق الواجهة MustVerifyEmail على النموذج User:

<?php

namespace App\Models;

use Illuminate\Contracts\Auth\MustVerifyEmail;

// ...

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

  // ...

}

بعد ذلك في ملف المسارات تحتاج إلى التعديل على:

Auth::routes();

ليُصبح:

Auth::routes(['verify' => true]);

إذا لم تقم بإضافة إعدادات البريد الإلكتروني في ملف .env يجب إضافتها:

MAIL_MAILER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=
MAIL_PASSWORD=
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="laravel@app.com"
MAIL_FROM_NAME="${APP_NAME}"

يُمكنك إستخدام خدمة mailtrap إن كنت في مرحلة التطوير،

بعد ذلك تحتاج إلى حماية المسارات من المستخدمين الذي لم يقومو بتفعيل حسابهم بإضافة ال middleware verified كما هو موضح أدناه:

Route::middleware(['verified'])->group(function () {
    // المسارات التي تريد حمايتها
});

و بهذا الشكل إذا قام أحد المُستخدمين الذين لم يُفعلو حسابهم بتصفح هذه المسارات يتم إعادة توجيههم تلقائياً إلى صفحة التحقق من البريد الإلكتروني.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...