أساسيات التوجيه في Laravel: كيفية تعريف واستخدام الـ Routes
المقدمة
التوجيه (Routing) في Laravel هو نظام إدارة المسارات الذي يحدد كيفية استجابة التطبيق لطلبات HTTP المختلفة. باستخدام التوجيه، يمكنك تحديد المسار (URL) والطريقة (HTTP Method) التي ينبغي للتطبيق التعامل معها. يعد التوجيه أحد العناصر الأساسية في بناء تطبيقات ويب فعالة في Laravel. في هذا الدليل، سنستعرض كيفية تعريف المسارات المختلفة واستخدامها في تطبيقك.
ما هو التوجيه في Laravel؟
التوجيه هو عملية تعيين طلبات HTTP إلى دوال محددة في التطبيق. في Laravel، يتم تعريف المسارات في ملفات التوجيه الموجودة في مجلد routes/
، وأكثرها استخدامًا هو ملف web.php
لتحديد مسارات الويب.
الخطوة 1: تعريف مسار بسيط
لتعريف مسار بسيط في Laravel، افتح ملف routes/web.php
واستخدم دالة Route::get
لتحديد مسار GET:
Route::get('/welcome', function () {
return 'مرحباً بك في Laravel!';
});
عند زيارة http://your-app-url/welcome
، سيعرض هذا المسار الرسالة “مرحباً بك في Laravel!”.
الخطوة 2: استخدام المتحكمات مع المسارات
لربط مسار بمتحكم، يمكنك استخدام صيغة المتحكم في تعريف المسار. لنقم بتحديث المثال السابق لربط المسار بمتحكم:
use App\Http\Controllers\WelcomeController;
Route::get('/welcome', [WelcomeController::class, 'show']);
سيقوم هذا بتوجيه الطلبات إلى دالة show
داخل WelcomeController
. تحتاج إلى التأكد من وجود المتحكم والدالة المحددة.
الخطوة 3: تمرير المعلمات إلى المسارات
يمكنك تمرير معلمات إلى المسارات واستخدامها داخل المتحكم. لنقم بإنشاء مسار يقبل معرف المستخدم (user ID) ويعرضه:
Route::get('/user/{id}', function ($id) {
return 'User ID: ' . $id;
});
عند زيارة http://your-app-url/user/1
، سيعرض التطبيق “User ID: 1”.
الخطوة 4: تعريف المسارات ذات الأسماء (Named Routes)
يمكنك تعريف مسارات ذات أسماء لتسهيل إنشاء الروابط وإعادة توجيه الطلبات في Laravel:
Route::get('/profile', [UserController::class, 'show'])->name('profile');
الآن، يمكنك استخدام اسم المسار profile
لإنشاء روابط أو إعادة توجيه الطلبات:
return redirect()->route('profile');
الخطوة 5: استخدام مجموعات المسارات (Route Groups)
يمكنك تنظيم مساراتك باستخدام مجموعات المسارات لتطبيق الإعدادات المشتركة على مجموعة من المسارات، مثل الوسطاء (middleware) أو النطاقات (prefixes):
Route::prefix('admin')->group(function () {
Route::get('/users', [AdminController::class, 'users']);
Route::get('/settings', [AdminController::class, 'settings']);
});
جميع المسارات داخل المجموعة ستبدأ بالنطاق /admin
.
الخاتمة
بفهمك لأساسيات التوجيه في Laravel، يمكنك الآن تنظيم تدفق البيانات وإدارة طلبات HTTP بشكل فعال في تطبيقات الويب الخاصة بك. يوفر Laravel نظام توجيه قويًا ومرنًا يسمح لك بتحديد كيفية استجابة التطبيق لطلبات المستخدمين بطرق متنوعة. تأكد من استكشاف المزيد من الميزات المتقدمة للتوجيه في Laravel لتحسين تجربة تطويرك.
اترك تعليقاً