Не могу выстроить slug в django при перехода из категори в субкатегорию далее продукт
Не могу понять как к /категори добавить /субкатегория(Groups)
Что бы получить и отработать
http://127.0.0.1:8000/категори/субкатегория(Groups)/продукт и потом дальше идти по цепочке sluga.
Как сфорировать slug и работать c ними
Models:
class Category(models.Model):
name = models.CharField(max_length=100, default="1")
slug = models.SlugField(null=False, unique=True)
parent = models.ForeignKey('self', related_name='children', on_delete=models.CASCADE, blank=True, null=True)
def save(self, *args, **kwargs):
self.slug = slugify(self.name)
super(Category, self).save(*args, **kwargs)
def __str__(self):
return f'{self.name}'
def get_absolute_url(self):
return reverse('groups_list', kwargs={'slug': self.slug})
class Groups(models.Model):
name = models.CharField(max_length=100, default="1")
category_id = models.ForeignKey(Category, on_delete=models.CASCADE)
slug = models.SlugField(null=False, unique=True)
def save(self, *args, **kwargs):
self.slug = slugify(self.name)
super(Groups, self).save(*args, **kwargs)
def __str__(self):
return f'{self.name}'
def get_absolute_url(self):
return reverse('groups_list', kwargs={'slug': self.slug})
class Products(models.Model):
name = models.CharField(max_length=100, default="1")
art = models.CharField(max_length=100, default="1")
group_id = models.ForeignKey(Groups, on_delete=models.CASCADE)
slug = models.SlugField(null=False, unique=True)
def save(self, *args, **kwargs):
self.slug = slugify(self.name) + slugify(self.art)
super(Products, self).save(*args, **kwargs)
def __str__(self):
return f'{self.name}'
def get_absolute_url(self):
return reverse('pro_list', kwargs={'slug': self.slug})
Urls:
path('', StartPage.as_view()),
path('<str:slug>', views.show_group ,name ='groups_list'),
path('<str:category__slug>/<str:slug>', views.show_products ,name ='pro_list'),
views:
urlpatterns = [
path('', StartPage.as_view()),
path('<str:slug>', views.show_group ,name ='groups_list'),
]