~2 دقیقه مطالعه • بروزرسانی ۱۰ بهمن ۱۴۰۴
جنگو (Django) چیست؟
Django یک فریمورک رایگان و متنباز برای توسعه وب است که به زبان Python نوشته شده. هدف اصلی جنگو این است که به توسعهدهندگان اجازه دهد برنامههای وب پیچیده را در کمترین زمان ممکن و با نوشتن کمترین کد بسازند. شعار معروف جنگو این است: "The web framework for perfectionists with deadlines".
۱. چرا باید از جنگو استفاده کنیم؟
جنگو از فلسفه Batteries Included پیروی میکند. این یعنی بسیاری از قابلیتهایی که در فریمورکهای دیگر باید جداگانه نصب شوند، در خود Django به صورت پیشفرض وجود دارند؛ قابلیتهایی مثل:
- پنل مدیریت آماده (Admin Interface)
- سیستم احراز هویت کاربران (Authentication)
- مدیریت پایگاه داده با
ORM - امنیت بالا در برابر حملاتی مثل
SQL InjectionوXSS
۲. معماری MVT در جنگو
جنگو از یک الگوی معماری خاص به نام MVT یا Model-View-Template استفاده میکند که باعث تفکیک وظایف در کدنویسی میشود:
Model: مدیریت دادهها و ساختار پایگاه داده.View: پردازش منطق برنامه و ارتباط بین مدل و قالب.Template: لایه نمایش و آنچه کاربر نهایی میبیند (معمولاً کدهایHTML).
۳. شروع کار و نصب جنگو
برای شروع کار با Django، ابتدا باید پایتون را نصب داشته باشید. سپس میتوانید با استفاده از ابزار pip، جنگو را نصب کنید. پیشنهاد میشود همیشه از یک virtualenv برای پروژههای خود استفاده کنید.
فرمان نصب جنگو در ترمینال:
pip install djangoبعد از نصب، برای ایجاد اولین پروژه خود از دستور زیر استفاده میکنیم:
django-admin startproject my_websiteو برای اجرای سرور داخلی و دیدن نتیجه کار در مرورگر:
python manage.py runserver۴. امنیت در جنگو
یکی از بزرگترین نقاط قوت Django، امنیت آن است. به طور پیشفرض، جنگو از بسیاری از اشتباهات رایج امنیتی جلوگیری میکند. برای مثال، برای محافظت از فرمها در برابر حملات CSRF، کافیست تگ زیر را در فرمهای خود قرار دهید:
{% csrf_token %}نتیجهگیری
فریمورک Django انتخابی بینظیر برای کسانی است که میخواهند از قدرت Python در دنیای وب استفاده کنند. از سایتهای کوچکی مثل وبلاگها تا پلتفرمهای عظیمی مثل اینستاگرام و پینترست، همگی از این فریمورک بهره میبرند. اگر به دنبال سرعت، امنیت و پایداری هستید، یادگیری جنگو بهترین قدم بعدی شماست.
نوشته و پژوهش شده توسط دکتر شاهین صیامی