ساختار دایرکتوری لاراول: اطلاعاتی از دایرکتوری ریشه

laravel root directory structure
20 آبان 1403

معرفی به لاراول

لاراول یکی از محبوب‌ترین فریم‌ورک‌های PHP است که برای توسعه وب‌سایت‌ها استفاده می‌شود. این فریم‌ورک طراحی شده است تا برنامه‌نویسان را در فرآیند توسعه یاری دهد و ساختار سازماندهی شده و قابل فهمی را فراهم کند. لاراول برای مدیریت و سازماندهی اجزای مختلف یک پروژه راهکارهای ویژه‌ای ارائه می‌دهد که ساختار دایرکتوری آن یکی از مهم‌ترین آن‌هاست.

هر پروژه لاراول با یک دایرکتوری ریشه شروع می‌شود که شامل تعدادی فولدر و فایل است که هر کدام نقش خاصی در پروژه ایفا می‌کنند. شناخت درست این دایرکتوری‌ها و هدف هر یک از آن‌ها می‌تواند توسعه‌دهندگان را در مدیریت بهتر پروژه‌های خود و اعمال تغییرات مورد نیاز یاری کند.

دایرکتوری‌های اصلی در دایرکتوری ریشه

دایرکتوری ریشه لاراول شامل چندین فولدر است که هر کدام هدف و کارکرد خاص خود را دارند. درک صحیح از وظیفه هر فیلد می‌تواند به شما کمک کند تا مدیریت بهتر و کارآمدتری بر روی پروژه خود داشته باشید. در ادامه به توضیح اجمالی هر کدام از این دایرکتوری‌ها پرداخته خواهد شد.

app/: این فولدر شامل کدهای مربوط به برنامه اصلی است، مثل مدل‌ها، کنترلرها و سرویس‌ها. معمولاً بیشترین تغییری که در پروژه ایجاد می‌کنید در این جا قرار دارد.

bootstrap/: این فولدر فایل‌هایی برای تنظیم و بوت‌استراپ کردن پروژه دارد. فایل اصلی در اینجا app.php است که در زمان اولیه‌سازی پروژه استفاده می‌شود.

config/: تنظیمات پروژه به صورت فایل‌های جداگانه در اینجا قرار می‌گیرد و می‌توانید پیکربندی‌های مختلفی را برای پروژه ایجاد کنید.

database/: فایل‌های مایگریشن، مدل‌های دیتابیس اولیه‌ای، و فیچرهای مربوط به دیتابیس در اینجا نگهداری می‌شوند.


root
├── app
├── bootstrap
│   └── app.php
├── config
├── database
│   ├── migrations
│   ├── seeds
├── public
├── resources
├── routes
│   └── web.php
├── storage
├── tests
└── vendor

توضیح خط به خط کد

root: این دایرکتوری اصلی پروژه شما است.

├── app: محل نگهداری کدهای کلیدی برنامه مانند مدل‌ها و کنترلرها است.

├── bootstrap: شامل فایل‌های تنظیماتی برای شروع به کار اپلیکیشن است.

│ └── app.php: فایل تنظیمات اولیه اپلیکیشن که در هنگام بوت‌استراپ استفاده می‌شود.

├── config: فولدری برای تنظیمات مختلف پروژه است که به صورت فایل‌های جداگانه نگهداری می‌شود.

├── database: مسوول نگهداری فایل‌های مایگریشن و دیگر تنظیمات مرتبط با دیتابیس است.

│ ├── migrations: شامل فایل‌های مایگریشن برای ایجاد و تغییر جدول‌های دیتابیس می‌شود.

│ ├── seeds: شامل فایل‌هایی است که دیتای آزمایشی را به دیتابیس اضافه می‌کنند.

├── public: فولدر اصلی برای فایل‌های قابل دسترس عمومی مانند CSS و JavaScript است.

├── resources: شامل منابع مانند ویوها و استایل‌ها است.

├── routes: شامل فایل‌های مربوط به تعریف مسیر‌های اپلیکیشن است.

│ └── web.php: فایل اصلی تعریف مسیرهای وبی که کاربران می‌بینند.

├── storage: فولدری برای ذخیره‌سازی فایل‌های لاگ و کش است.

├── tests: محلی برای نگهداری تست‌های پروژه است.

└── vendor: شامل تمام کتابخانه‌ها و وابستگی‌های نصب‌شده توسط Composer است.

سوالات متداول

؟

لاراول چیست و چه کاربردی دارد؟

؟

فولدر app/ در لاراول چه نقش دارد؟

؟

فولدر config/ چه تنظیماتی را شامل می‌شود؟

؟

هدف از فولدر database/ چیست؟