djangoslugger 1.1.2
Automatic slug field for your Django models.
Features
One query to rule them all. No database spam on model save.
Supports all standard “unique_for” field attributes like unique_for_date.
Supports model meta unique_together.
Supports custom “slugify” functions.
How it works
django-slugger provides AutoSlugField which value is automatically
generated if it is not filled manually. If the field has any “uniqueness”
constraint (unique=True, for example), numerical suffix will be used if
necessary to prevent constraint violation.
If generated slug exceeds field max_length, slug value will be cut to
fit in. This does not apply to suffixed slugs. Increase max_length
attribute value or use custom slug template if you need more space to
ensure slug uniqueness.
Installation
pip install django-slugger
Usage
from slugger import AutoSlugField
class AutoSlugModel(models.Model):
title = models.CharField(max_length=255)
slug = AutoSlugField(populate_from='title')
Custom slug template
By default, django-slugger will use Django slugify function
(combined with unidecode to handle non-ASCII characters). To use your own function,
specify it in slugify argument.
def custom_slugify(value):
return 'custom-%s' % value
class CustomAutoSlugModel(models.Model):
title = models.CharField(max_length=255)
slug = AutoSlugField(populate_from='title', slugify=custom_slugify)
Note
slugify argument must be top-level named function.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.