الـ Middleware في Laravel طبقة تمر عليها الطلبات قبل وصولها إلى الـ Controller (أو بعده). أشهر استخدام: التحكم في الوصول إلى مسارات معينة.
Route::get('/dashboard', [DashboardController::class, 'index'])
->middleware('auth');
هنا لن يصل إلى لوحة التحكم إلا المستخدم المسجل دخوله، والبقية يُحوَّلون إلى صفحة الدخول.
أمثلة أخرى
- التحقق من الصلاحيات (مدير أم لا).
- تحديد عدد الطلبات (throttle).
- ضبط لغة الموقع حسب المستخدم.
php artisan make:middleware EnsureUserIsAdmin
ولا علاقة له بأداء قاعدة البيانات أو بقوالب Blade.