-
Book Overview & Buying
-
Table Of Contents
Django 4 By Example - Fourth Edition
By :
The canonical URL for a blog post detail view currently looks like /blog/1/. We will change the URL pattern to create SEO-friendly URLs for posts. We will be using both the publish date and slug values to build the URLs for single posts. By combining dates, we will make a post detail URL to look like /blog/2022/1/1/who-was-django-reinhardt/. We will provide search engines with friendly URLs to index, containing both the title and date of the post.
To retrieve single posts with the combination of publication date and slug, we need to ensure that no post can be stored in the database with the same slug and publish date as an existing post. We will prevent the Post model from storing duplicated posts by defining slugs to be unique for the publication date of the post.
Edit the models.py file and add the following unique_for_date parameter to the slug field of the Post model:
class Post(models.Model):
# ...
slug = models.SlugField...