Generate Slugs with slugify
A snippet showing how to generate slugs for models or utils.
# models.py
from django.db import models
from django.utils.text import slugify
class Article(models.Model):
title = models.CharField(max_length=150)
slug = models.SlugField(unique=True, blank=True)
def save(self, *args, **kwargs):
if not self.slug:
self.slug = slugify(self.title)
super().save(*args, **kwargs)
# admin.py
from django.contrib import admin
from .models import Article
@admin.register(Article)
class ArticleAdmin(admin.ModelAdmin):
list_display = ("title", "slug")
Explanation:
-
Use
django.utils.text.slugifyto create URL-friendly slugs. -
Fill
slugif blank to avoid overwriting user edits.
- Category Utilities & Miscellaneous
- Total Views 680
- Last Modified 24 May, 2026
- Tags #slugify #utils #models #text
Previous snippet
Django Humanize Filters
Next snippet