ساختار پروژه

ساختار پروژه در جنگو

زمانی که یک پروژه جدید در جنگو ایجاد می‌کنید، ساختار خاصی به صورت خودکار برای شما ساخته می‌شود. این ساختار به شما کمک می‌کند تا کدهای خود را به صورت منظم و استاندارد سازماندهی کنید. در این مقاله به بررسی کامل این ساختار و کاربرد هر بخش می‌پردازیم.

برای یادگیری نحوه ایجاد پروژه در جنگو می‌توانید اینجا را تماشا کنید.

فایل‌ها و پوشه‌های اصلی

پس از اجرای دستور django-admin startproject، ساختار زیر ایجاد می‌شود:

  • manage.py: فایل اصلی مدیریت پروژه
  • پوشه پروژه: شامل فایل‌های اصلی تنظیمات
  • پوشه داخلی (همنام پروژه):
    • __init__.py: نشان‌دهنده پکیج پایتون
    • settings.py: تنظیمات اصلی پروژه
    • urls.py: مسیرهای اصلی پروژه
    • wsgi.py: پیکربندی WSGI
فایل/پوشه توضیحات
manage.py ابزار خط فرمان برای تعامل با پروژه
settings.py شامل تمام تنظیمات پایگاه داده، برنامه‌ها و ...
urls.py تعریف مسیرهای URL و ارتباط آن‌ها با viewها

ساختار پیشرفته پروژه

برای پروژه‌های حرفه‌ای، معمولاً ساختار زیر توصیه می‌شود:

  1. پوشه اصلی پروژه
  2. پوشه اپلیکیشن‌ها (apps)
  3. پوشه static (برای فایل‌های استاتیک)
  4. پوشه templates (برای فایل‌های قالب)
  5. پوشه media (برای فایل‌های آپلود شده کاربران)

توجه داشته باشید که جنگو از الگوی MVT (Model-View-Template) پیروی می‌کند که این ساختار به بهترین شکل از این الگو پشتیبانی می‌کند.

تنظیمات مهم در settings.py

فایل settings.py قلب هر پروژه جنگو محسوب می‌شود. برخی از مهم‌ترین تنظیمات شامل:

  • INSTALLED_APPS: لیست اپلیکیشن‌های نصب شده
  • DATABASES: تنظیمات اتصال به پایگاه داده
  • STATIC_URL: آدرس فایل‌های استاتیک
  • MEDIA_ROOT: مسیر ذخیره فایل‌های آپلود شده
  • TEMPLATES: تنظیمات مربوط به قالب‌ها

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