در لاراول، Controller (کنترلر) یکی از اجزای اصلی معماری MVC است و نقش واسط بین Model (مدل دادهها) و View (نمایش به کاربر) را ایفا میکند. در این مقاله به طور کامل و کاربردی با مفهوم کنترلر در لاراول آشنا میشویم.
🎮 کنترلر در لاراول چیست؟
کنترلرها مسئول مدیریت منطق درخواستهای ورودی هستند. وقتی کاربر از طریق Route به یک URL خاص دسترسی پیدا میکند، این درخواست ابتدا به کنترلر مربوطه میرود، دادهها را از مدل گرفته، پردازش میکند و در نهایت به View ارسال میکند.
🛠 ایجاد کنترلر
برای ساخت کنترلر از Artisan استفاده میکنیم:
📂 مسیر ایجاد کنترلر:
📝 یک مثال ساده از کنترلر
🔗 اتصال کنترلر به Route
📦 کنترلر Resource (برای CRUD کامل)
برای ساخت کنترلر Resource:
این کنترلر شامل 7 متد زیر خواهد بود:
| متد | وظیفه |
|---|---|
index() | نمایش لیست |
create() | نمایش فرم ساخت |
store() | ذخیره داده جدید |
show($id) | نمایش یک داده خاص |
edit($id) | نمایش فرم ویرایش |
update(Request $request, $id) | بهروزرسانی داده |
destroy($id) | حذف داده |
📌 اتصال به Route resource:
🧠 کنترلر با Middleware
میتوان در کنترلر تعیین کرد که فقط کاربران خاصی دسترسی داشته باشند:
🔄 استفاده مجدد از منطق در کنترلرها
مثال با متد خصوصی:
✅ جمعبندی
🔹 کنترلرها بخش اصلی منطق برنامه در لاراول هستند
🔹 از طریق Route به آنها دسترسی داده میشود
🔹 میتوان از کنترلرهای معمولی یا resource برای سازماندهی بهتر استفاده کرد
🔹 قابلیت استفاده از Middleware و متدهای داخلی برای مرتبسازی کدها را دارند