آموزش جامع مسیریابی در لاراول
🎯 اهداف یادگیری
- آشنایی با مفاهیم پایه مسیریابی در لاراول
- یادگیری انواع روشهای تعریف Route
- کار با پارامترهای مسیر
- استفاده از نامگذاری Routes
- مدیریت گروهبندی Routeها
📌 مقدمه ای بر مسیریابی در لاراول
مسیریابی (Routing) یکی از اساسیترین مفاهیم در فریمورک لاراول است که نحوه پاسخگویی برنامه به درخواستهای HTTP را تعیین میکند.
php
Route::get('/', function () { return 'خوش آمدید!';});
انواع متدهای HTTP:
- GET: برای دریافت اطلاعات از سرور
- POST: برای ارسال اطلاعات به سرور
- PUT/PATCH: برای بهروزرسانی اطلاعات
- DELETE: برای حذف اطلاعات
📌 مسیریابی به کنترلرها
به جای تعریف منطق درون Route، میتوانید از کنترلرها استفاده کنید:
php
Route::get('/user', 'UserController@index');
مثال کنترلر:
php
namespace App\Http\Controllers;class UserController{ public function index() { return 'لیست کاربران'; }}
📌 پارامترهای مسیر
میتوانید پارامترهای مورد نیاز را در URL دریافت کنید:
php
// پارامتر اجباریRoute::get('user/{id}', function ($id) { return 'کاربر شماره ' . $id;});// پارامتر اختیاریRoute::get('user/{name?}', function ($name = 'مهمان') { return 'سلام ' . $name;});
محدودیتهای پارامترها:
php
Route::get('user/{id}', function ($id) { // ...})->where('id', '[0-9]+');
📌 نامگذاری مسیرها
میتوانید به مسیرها نام اختصاص دهید تا در سایر قسمتهای برنامه به آنها ارجاع دهید:
php
Route::get('user/profile', function () { // ...})->name('profile');
استفاده از نام مسیرها:
php
// در کنترلرهاreturn redirect()->route('profile');// در بلید<a href="{{ route('profile') }}">پروفایلa>
📌 گروهبندی مسیرها
میتوانید مسیرهای مرتبط را گروهبندی کنید:
php
Route::prefix('admin')->group(function () { Route::get('/users', function () { // Matches The "/admin/users" URL });});
ویژگیهای گروهبندی:
- پیشوند (Prefix): اضافه کردن پیشوند به تمام مسیرهای گروه
- میانافزار (Middleware): اعمال میانافزار به تمام مسیرهای گروه
- فضای نام (Namespace): تعیین Namespace برای کنترلرهای گروه
📌 تمرین عملی
مسیرهای زیر را برای یک وبلاگ ساده ایجاد کنید:
php
// 1. مسیر اصلی که لیست پستها را نمایش میدهد// 2. مسیر نمایش یک پست خاص (با دریافت id پست)// 3. مسیر ایجاد پست جدید (فقط برای کاربران احراز هویت شده)// 4. گروهی از مسیرهای مدیریتی با پیشوند admin/
راهنمای تمرین:
- از متدهای مناسب HTTP استفاده کنید
- برای مسیرها نام مناسب انتخاب کنید
- پارامترها را با محدودیت عددی تعریف کنید
- از گروهبندی برای مسیرهای مدیریتی استفاده کنید
📌 قدم بعدی
در درس بعدی با کنترلرها در لاراول به صورت جامع آشنا خواهیم شد!