آموزش Django برای ساخت سایت‌های فروشگاهی ساده

تاریخ: 1404/7/21 ساعت: 3:46 بازدید: 9

آموزش Django برای ساخت سایت های فروشگاهی ساده

آموزش Django برای ساخت سایت های فروشگاهی ساده

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

فصل اول: پیش نیازها و نصب Django

قبل از شروع، اطمینان حاصل کنید که پایتون و pip روی سیستم شما نصب شده اند. برای نصب Django، از دستور زیر در ترمینال استفاده کنید:

        pip install django
    

پس از نصب Django، می توانید یک پروژه جدید ایجاد کنید:

        django-admin startproject myshop
    

با اجرای این دستور، یک پوشه با نام myshop ایجاد می شود که شامل فایل های اولیه پروژه Django شماست.

فصل دوم: ایجاد مدل ها

مدل ها، ساختار داده های سایت شما را تعریف می کنند. برای مثال، برای سایت فروشگاهی، می توانیم مدل های Product و Category را ایجاد کنیم. در فایل models.py اپلیکیشن خود (مثلاً shop/models.py)، کد زیر را اضافه کنید:

        
from django.db import models

class Category(models.Model):
    name = models.CharField(max_length=200)
    slug = models.SlugField(max_length=200, unique=True)

    def __str__(self):
        return self.name

class Product(models.Model):
    category = models.ForeignKey(Category, related_name='products', on_delete=models.CASCADE)
    name = models.CharField(max_length=200)
    slug = models.SlugField(max_length=200, unique=True)
    description = models.TextField()
    price = models.DecimalField(max_digits=10, decimal_places=2)
    image = models.ImageField(upload_to='products/%Y/%m/%d', blank=True)
    available = models.BooleanField(default=True)
    created = models.DateTimeField(auto_now_add=True)
    updated = models.DateTimeField(auto_now=True)

    def __str__(self):
        return self.name
        
    

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

        
python manage.py makemigrations
python manage.py migrate
        
    

فصل سوم: ایجاد نماها (Views)

نماها، منطق اصلی سایت شما را پیاده سازی می کنند. برای مثال، برای نمایش لیست محصولات و جزئیات یک محصول، می توانیم نماهای زیر را ایجاد کنیم:

        
from django.shortcuts import render, get_object_or_404
from .models import Category, Product

def product_list(request, category_slug=None):
    category = None
    categories = Category.objects.all()
    products = Product.objects.filter(available=True)
    if category_slug:
        category = get_object_or_404(Category, slug=category_slug)
        products = products.filter(category=category)
    return render(request, 'shop/product_list.html', {'category': category, 'categories': categories, 'products': products})

def product_detail(request, id, slug):
    product = get_object_or_404(Product, id=id, slug=slug, available=True)
    return render(request, 'shop/product_detail.html', {'product': product})
        
    

فصل چهارم: ایجاد قالب ها (Templates)

قالب ها، ظاهر سایت شما را تعیین می کنند. برای مثال، می توانیم قالب های product_list.html و product_detail.html را ایجاد کنیم.

نمونه ای از product_list.html:

        
<h1>محصولات</h1>
<ul>
    {% for product in products %}
        <li><a href="{{ product.get_absolute_url }}">{{ product.name }}</a></li>
    {% endfor %}
</ul>
        
    

فصل پنجم: راه اندازی URLها

برای اتصال نماها به URLها، باید فایل urls.py را پیکربندی کنید. در فایل urls.py اپلیکیشن خود، کد زیر را اضافه کنید:

        
from django.urls import path
from . import views

app_name = 'shop'

urlpatterns = [
    path('', views.product_list, name='product_list'),
    path('<slug:category_slug>/', views.product_list, name='product_list_by_category'),
    path('<int:id>/<slug:slug>/', views.product_detail, name='product_detail'),
]
        
    

سوالات متداول (FAQ)

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

Django یک فریم ورک وب پایتون سطح بالا است که توسعه سریع و طراحی تمیز و عمل گرایانه را تشویق می کند. از آن برای ساخت وب سایت ها و برنامه های وب پیچیده استفاده می شود.

چگونه می توانم Django را نصب کنم؟

برای نصب Django، می توانید از pip استفاده کنید: pip install django

چگونه می توانم یک پروژه جدید Django ایجاد کنم؟

برای ایجاد یک پروژه جدید، از دستور django-admin startproject projectname استفاده کنید.

چگونه می توانم مدل ها را به پایگاه داده منتقل کنم؟

برای انتقال مدل ها به پایگاه داده، از دستورات زیر استفاده کنید: python manage.py makemigrations python manage.py migrate

آیا به دنبال بهینه سازی سئوی سایت فروشگاهی خود هستید؟ با ما تماس بگیرید: 09190994063 - 09376846692

نظرات کاربران