create unique slugs for services (#5837)
This commit is contained in:
parent
b787391992
commit
47998e1dcd
|
@ -37,7 +37,17 @@ class BaseForm(forms.ModelForm):
|
|||
|
||||
def save(self, commit=True):
|
||||
if not self.instance.slug:
|
||||
self.instance.slug = slugify(self.instance.title)
|
||||
base_slug = slugify(self.instance.title)
|
||||
slug = base_slug
|
||||
i = 1
|
||||
while True:
|
||||
try:
|
||||
self.Meta.model.objects.get(slug=slug)
|
||||
except self.Meta.model.DoesNotExist:
|
||||
break
|
||||
i += 1
|
||||
slug = '%s-%s' % (base_slug, i)
|
||||
self.instance.slug = slug
|
||||
if not self.instance.secret_key:
|
||||
self.instance.secret_key = get_random_string(50, SECRET_CHARS)
|
||||
choices = self.get_template_choices()
|
||||
|
|
Loading…
Reference in New Issue