Maison >développement back-end >Tutoriel Python >Qu'est-ce qu'un « Slug » dans Django et pourquoi devrais-je m'en soucier ?

Qu'est-ce qu'un « Slug » dans Django et pourquoi devrais-je m'en soucier ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-04 04:28:01516parcourir

What is a

Comprendre le "Slug" de Django

Lorsque vous explorez le code de Django, vous pouvez rencontrer le terme "slug". Il s'agit d'une courte étiquette utilisée pour la création d'URL. Un slug est composé de lettres, de chiffres, de traits de soulignement ou de traits d'union et joue un rôle important dans la génération d'URL significatives et facilement lisibles.

Un slug est généralement dérivé d'un autre élément de données, tel que le titre d'un article. Plutôt que d'attribuer manuellement un slug, il est recommandé d'utiliser une fonction pour le générer en fonction du titre. Par exemple :

<title> The 46 Year Old Virgin </title>
<content> A silly comedy movie </content>
<slug> the-46-year-old-virgin </slug>

Considérons un modèle Django comme celui-ci :

<code class="python">class Article(models.Model):
    title = models.CharField(max_length=100)
    content = models.TextField(max_length=1000)
    slug = models.SlugField(max_length=40)</code>

Pour référencer un article à l'aide d'une URL avec un nom significatif, vous pouvez utiliser le slug. Si vous deviez utiliser l'identifiant de l'article à la place, l'URL serait :

www.example.com/article/23

Alternativement, l'utilisation directe du titre entraînerait :

www.example.com/article/The 46 Year Old Virgin

Cependant, les espaces ne sont pas valides dans Les URL et devraient être remplacées par , ce qui donne :

www.example.com/article/The%2046%20Year%20Old%20Virgin

Aucune de ces tentatives ne crée une URL conviviale. L'approche slug est préférée :

www.example.com/article/the-46-year-old-virgin

Dans cet exemple, le slug est créé à partir du titre en convertissant toutes les lettres en minuscules et en remplaçant les espaces par des tirets (-).

Les slugs jouent un rôle essentiel dans la génération d’URL à la fois significatives et faciles à lire. Considérez l'URL de cette même page Web comme un autre exemple.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn