جستجو کردن
آموزش جنگو رایگان

آموزش جنگو رایگان

آموزش جنگو رایگان

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

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

در ادامه آموزش جنگو رایگان بیایید این فریم‌ورک را بیشتر برسی کنیم. جنگو یک فریم‌ورک کاملاً رایگان و متن‌باز است که برای توسعه‌ی سریع و کارآمد برنامه‌های وب استفاده می‌شود. این فریم‌ورک بر اساس معماری MTV طراحی شده است که توسعه‌ی برنامه‌های وب را ساختاریافته و مقیاس‌پذیر می‌کند.

آموزش جنگو رایگان

معماری MTV چیست؟

معماری MTV مخفف Model-Template-View است و یک الگوی طراحی (Pattern) در توسعه‌ی وب محسوب می‌شود که بیشتر در فریمورک Django مورد استفاده قرار می‌گیرد. این معماری مشابه معماری MVC مخفف Model-View-Controller است، اما تفاوت‌هایی دارد.

چرا Django از MTV استفاده می‌کند؟

  • جدا کردن بخش نمایش از منطق پردازش داده‌ها.
  • سهولت در توسعه و نگهداری پروژه‌های بزرگ.
  • استفاده از ORM داخلی Django برای ارتباط با پایگاه داده.
  • جداسازی مسئولیت‌ها و بهینه‌سازی عملکرد.

در نهایت، MTV در Django مانند MVC در سایر فریمورک‌ها است، با این تفاوت که نقش Controller را View به عهده دارد و بخش Template به جای View در MVC استفاده می‌شود.

تاریخچه جنگو

جنگو در سال 2003 توسط برنامه‌نویسانی در یک سازمان خبری توسعه یافت و در سال 2005 به‌صورت متن‌باز منتشر شد. این فریم‌ورک نام خود را از نوازنده معروف گیتار، جنگو راینهارت، گرفته است. جنگو از ابتدا با رویکرد “سریع حرکت کن و نشکن” طراحی شد و هنوز هم یکی از محبوب‌ترین فریمورک‌های وب در جهان است و شما با آموزش جنگو رایگان می‌توانید استفاده ازین فریم‌ورک برای برنامه‌های تحت وب خود استفاده کنید.

آموزش جنگو رایگان

ویژگی‌های کلیدی جنگو

  1. توسعه‌ی سریع: جنگو به شما امکان می‌دهد پروژه‌های پیچیده خود را در کمترین زمان توسعه دهید.
  2. امنیت بالا: جنگو در برابر حملات رایج مانند SQL Injection، XSS و CSRF مقاوم است.
  3. ORM قدرتمند: برای کار با پایگاه‌های داده از ORM داخلی بهره می‌برد که مدیریت داده‌ها را آسان‌تر می‌کند.
  4. مدیریت ادمین داخلی:جنگو به شما یک پنل مدیریت آماده برای کنترل داده‌ها ارائه می‌دهد.
  5. مقیاس‌پذیری بالا: برای توسعه‌ی پروژه‌های بزرگ و پیچیده مناسب است.
  6. پشتیبانی از کشینگ: در نهایت، این فریم‌ورک به بهبود عملکرد و سرعت بارگذاری صفحات کمک می‌کند.

آموزش حنگو رایگان : نصب جنگو

قبل از نصب جنگو، ابتدا بررسی کنید که پایتون روی سیستم شما نصب شده است. برای این کار، دستور زیر را در ترمینال (یا خط فرمان) اجرا کنید:

python --version

یا در برخی سیستم‌ها:

python3 --version

اگر نسخه‌ای از پایتون به همراه ورژن آن (مثلاً Python 3.x.x) نمایش داده شد، یعنی پایتون روی سیستم شما نصب است. در غیر این صورت، ابتدا باید آن را از وب‌سایت رسمی پایتون دانلود و نصب کنید.

نصب جنگو

برای نصب جنگو، پس از اطمینان از نصب بودن پایتون، از pip در ترمینال استفاده کنید:

pip install django

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

ایجاد یک پروژه جدید در جنگو

django-admin startproject myproject
cd myproject
python manage.py runserver

توضیح کد بالا:

  • django-admin startproject myproject → یک پروژه جنگو جدید به نام myproject ایجاد می‌کند.
  • cd myproject → وارد پوشه‌ی پروژه می‌شود.
  • python manage.py runserver → سرور داخلی جنگو را اجرا می‌کند( این سرور به طور پیش‌فرض روی آدرس http://127.0.0.1:8000/ قرار دارد ).

اکنون با باز کردن مرورگر و رفتن به http://127.0.0.1:8000/، صفحه‌ی پیش‌فرض جنگو را خواهید دید.

آموزش جنگو

آموزش جنگو رایگان: ایجاد اپلیکیشن در جنگو

جنگو از ساختار ماژولار استفاده می‌کند، بنابراین می‌توان چندین اپلیکیشن درون یک پروژه داشت. برای ایجاد یک اپلیکیشن جدید، دستور زیر را اجرا کنید:

python manage.py startapp myapp

توضیح کد فوف: این دستور یک پوشه‌ی جدید به نام myapp ایجاد می‌کند که شامل فایل‌های اصلی مورد نیاز اپلیکیشن است.

حالا اپلیکیشن خود را در settings.py به بخش INSTALLED_APPS اضافه کنید:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'myapp',  # اضافه کردن اپلیکیشن جدید
]

آموزش جنگو رایگان: ایجاد مدل در جنگو

برای مدیریت داده‌ها، جنگو از یک ORM داخلی استفاده می‌کند. در models.py مربوط به myapp، مدل زیر را تعریف کنید:

from django.db import models

class Post(models.Model):
    title = models.CharField(max_length=200)
    content = models.TextField()
    created_at = models.DateTimeField(auto_now_add=True)

توضیح کد بالا:

  • title = models.CharField(max_length=200) → یک فیلد متنی با حداکثر ۲۰۰ کاراکتر برای عنوان تعیین می‌شود.
  • content = models.TextField() → این خط نیز یک فیلد متنی بزرگ برای محتوا مشخص می‌کند.
  • created_at = models.DateTimeField(auto_now_add=True) → زمان ایجاد پست را ذخیره می‌کند.

آموزش جنگو رایگان

آموزش جنگو رایگان: ایجاد جدول در پایگاه داده

پس از تعریف مدل، باید آن را به پایگاه داده اعمال کنیم:

python manage.py makemigrations
python manage.py migrate

توضیح کد فوق:

  • makemigrations → تغییرات مدل را به‌صورت فایل‌های مهاجرت ذخیره می‌کند.
  • migrate → این دستور تغییرات را روی پایگاه داده اعمال می‌کند.

آموزش جنگو رایگان: ایجاد ویو و نمایش داده‌ها

در views.py مربوط به myapp، یک ویو برای نمایش پست‌ها ایجاد کنید:

from django.shortcuts import render
from .models import Post

def post_list(request):
    posts = Post.objects.all()
    return render(request, 'post_list.html', {'posts': posts})

توضیح:

  • Post.objects.all() → همه‌ی پست‌های موجود در پایگاه داده را دریافت می‌کند.
  • render(request, 'post_list.html', {'posts': posts}) → داده‌ها را به قالب post_list.html ارسال می‌کند.

آموزش جنگو رایگان

آموزش جنگو رایگان: ایجاد قالب HTML برای نمایش پست‌ها

برای نمایش و ظاهر دهی به برنامه‌تان می‌توانید یک قالب html بسازید و به آن استایل دهید. یک فایل جدید در myapp/templates/post_list.html ایجاد کنید:

<!DOCTYPE html>
<html lang="fa">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>لیست پست‌ها</title>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
    <div class="container mt-4">
        <h1 class="text-center">پست‌های بلاگ</h1>
        <div class="row">
            {% for post in posts %}
                <div class="col-md-6">
                    <div class="card my-3">
                        <div class="card-body">
                            <h2 class="card-title">{{ post.title }}</h2>
                            <p class="card-text">{{ post.content }}</p>
                            <p class="text-muted">تاریخ انتشار: {{ post.created_at }}</p>
                        </div>
                    </div>
                </div>
            {% endfor %}
        </div>
    </div>
</body>
</html>

برای ظاهر دهی کد بالا از کدهای آماده bootstrap استفاده شده. شما می‌توانید از استایل و css شخصی استفاده کنید.

آموزش جنگو رایگان: ایجاد مسیرهای URL در جنگو

در urls.py مسیر نمایش لیست پست‌ها را تنظیم کنید:

from django.urls import path
from .views import post_list

urlpatterns = [
    path('', post_list, name='post_list'),
]

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

آموزش جنگو رایگان

آموزش جنگو رایگان: کاربردهای جنگو

از جنگو می‌توانید در پروژه‌های متنوع استفاده کنید از جمله آن‌ها می‌توان به موارد زیر اشاره کرد:

  • سایت‌های خبری و وبلاگ‌ها
  • فروشگاه‌های اینترنتی و سیستم‌های تجارت الکترونیک
  • شبکه‌های اجتماعی و انجمن‌های گفتگو
  • پنل‌های مدیریتی و سیستم‌های داخلی سازمانی

نتیجه‌گیری

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

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

نیک وب 360
آموزش های حرفه ای نیک وب 360، راهی به سوی آینده روشن

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

از اینکه برایمان نظر خودتان را درج کردید ممنونیم. لطفا توجه کنید نظراتی که مخالف قوانین هستند، حذف خواهد شد.