• 1401/07/15

درباره ساخت مدل سریالایزر برای یک سایت فروشگاهیی :

سلام خسته نباشید . برای یه سایت فروشگاهیی که کلاس دسته بندی و مثلا برند داره موقع ساخت مدل سریالایزر چجوری باید اون کلاس هارو بهش بفهمونیم ؟؟ این مدلیه که ساختم

from django.db import models
from django.shortcuts import redirect,reverse
from django.utils import timezone
from datetime import datetime
from django.utils.text import slugify




class productCategory(models.Model):
    title = models.CharField(max_length=30)
    url_title = models.CharField(max_length=30)
    is_active = models.BooleanField(default=False)


    def __str__(self):
        return self.url_title


class productBrand(models.Model):
    title = models.CharField(max_length=20)
    is_active = models.BooleanField(default=False)

    def __str__(self):
        return self.title


class product(models.Model):
    title = models.CharField(max_length=100, verbose_name="عنوان", db_index=True)
    price = models.IntegerField(verbose_name="قیمت")
    image = models.ImageField(upload_to="images", verbose_name="عکس", null=True, blank=True)
    category = models.ManyToManyField(productCategory,
                                      related_name="category", verbose_name="دسته بندی",db_index=True)
    brand = models.ForeignKey(productBrand, on_delete=models.CASCADE,
                              blank=True, null=True,verbose_name="برند")
    short_description = models.CharField(max_length=300, verbose_name="توضیحات کوتاه", db_index=True)
    description = models.TextField(verbose_name="توضیحات اصلی")
    special_property = models.CharField(max_length=100,verbose_name="ویژگی های خاص")
    color = models.CharField(max_length=30)
    is_active = models.BooleanField(default=False)
    is_delete = models.BooleanField()
    time_published = models.DateTimeField(default=datetime.now, verbose_name="زمان انتشار")
    slug = models.SlugField(default="", null=False, unique=True, db_index=True, verbose_name="اسلاگ")

    def __str__(self):
        return self.title


    def save(self,*args,**kwargs):
        self.slug = slugify(self.title)
        super().save(*args,**kwargs)


    def get_absolute_url(self):
        return reverse("detail-page" ,args=[self.slug])




logo-enamadlogo-samandehi