بی آکادمی
آموزش پایتون
هوش مصنوعی
دانلود و نصب لینوکس
داکر دسکتاپ
VS Code
آموزش لاراول
گیت و گیت هاب
آموزش HTML
آموزش CSS
فلکس باکس
جاوااسکریپت
TypeScript
فروشگاه اینترنتی
اپلیکیشن موبایل
آموزش اکسل
آموزش SQL
آموزش MySQL
آموزش PHP

آموزش جامع مسیریابی در لاراول


🎯 اهداف یادگیری

  • آشنایی با مفاهیم پایه مسیریابی در لاراول
  • یادگیری انواع روش‌های تعریف 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/

راهنمای تمرین:

  1. از متدهای مناسب HTTP استفاده کنید
  2. برای مسیرها نام مناسب انتخاب کنید
  3. پارامترها را با محدودیت عددی تعریف کنید
  4. از گروه‌بندی برای مسیرهای مدیریتی استفاده کنید

📌 قدم بعدی

در درس بعدی با کنترلرها در لاراول به صورت جامع آشنا خواهیم شد!