diff --git a/apps/course/models.py b/apps/course/models.py index b11156f4..b2233bd4 100644 --- a/apps/course/models.py +++ b/apps/course/models.py @@ -124,10 +124,11 @@ class Course(BaseModel, DeactivatedMixin): def save(self, *args, **kwargs): if not self.slug: - self.slug = slugify(unidecode(self.title[:90])) - - if Course.objects.filter(slug=self.slug).exclude(id=self.id).exists(): - self.slug += str(uuid4())[-3:] + slug = slugify(unidecode(self.title[:90])) + self.slug = slug + if self.slug: + while Course.objects.filter(slug=self.slug).exclude(id=self.id).exists(): + self.slug = slug + str(uuid4())[-4:] return super().save()