feat: added categories
This commit is contained in:
+25
-1
@@ -35,6 +35,27 @@ class Tag(models.Model):
|
||||
ordering = ("name",)
|
||||
|
||||
|
||||
class ProductCategory(models.Model):
|
||||
name = models.CharField(max_length=32)
|
||||
parent = models.ForeignKey('shop.ProductCategory', on_delete=models.SET_NULL, null=True, blank=True, verbose_name=_('categoría padre'))
|
||||
promoted = models.BooleanField(default=False, verbose_name=_('promocionada'))
|
||||
hidden = models.BooleanField(default=False, verbose_name=_('oculta'))
|
||||
show_in_navbar = models.BooleanField(default=False, verbose_name=_('mostrar en cabecera'))
|
||||
slug = models.SlugField(max_length=48, blank=True, default="", verbose_name=_("slug"), unique=True, db_index=True)
|
||||
|
||||
def __str__(self):
|
||||
return self.name
|
||||
|
||||
def save(self, *args, **kwargs):
|
||||
self.slug = slugify(self.name)
|
||||
super().save()
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("categoría")
|
||||
verbose_name_plural = _("categorías")
|
||||
ordering = ("name",)
|
||||
|
||||
|
||||
class Product(TimestampedModel):
|
||||
sku = models.CharField(
|
||||
max_length=64,
|
||||
@@ -68,6 +89,7 @@ class Product(TimestampedModel):
|
||||
"files.FileUpload", blank=True, verbose_name=_("imágenes")
|
||||
)
|
||||
tags = models.ManyToManyField("shop.Tag", blank=True, verbose_name=_("etiquetas"))
|
||||
categories = models.ManyToManyField("shop.ProductCategory", blank=True, verbose_name=_("categorías"))
|
||||
brand = models.ForeignKey(
|
||||
"shop.Brand",
|
||||
blank=True,
|
||||
@@ -415,7 +437,9 @@ class CustomerAddress(models.Model):
|
||||
BILLING = "BILL", _("facturación")
|
||||
SHIPPING = "SHIP", _("envío")
|
||||
|
||||
user = models.ForeignKey(User, on_delete=models.CASCADE, null=True, verbose_name=_("usuario"))
|
||||
user = models.ForeignKey(
|
||||
User, on_delete=models.CASCADE, null=True, verbose_name=_("usuario")
|
||||
)
|
||||
vat_id = models.CharField(
|
||||
max_length=16,
|
||||
blank=True,
|
||||
|
||||
Reference in New Issue
Block a user