Django-fr

Forum

#1 11-01-2015 20:40:05

Ennicolem
Membre
Inscription : 13-11-2014
Messages : 8
Site Web

Amélioration de slugify

Bonjour,

J'ai remarqué que l'on pouvait utiliser slugify pour générer des urls plus jolies. Cependant, depuis 6 ans, j'utilise en PHP une fonction custom. Or ma fonction me semble plus sympa que slugify. En effet, slugify supprime les apostrophes, là où moi je les remplace par des tirets... Ce qui donne une url plus jolie : les-maitres-d-ecosse est mieux que les-maitres-decosse. Le mot clé est ecosse, pas decosse.

Donc je me demandais que faire pour gérer ce cas. Dois-je modifier directement slugify sachant que cela signifie modifier le coeur de Django...
Sinon est-il possible de créer ma propre fonction qui serait une extension de slugify ? Si oui, comment faire ? Où l'écrire (car j'en ai besoin dans quasi tous mes formulaires/modèles) ?

Merci d'avance pour votre aide.

Cordialement,

Hors ligne

#2 12-01-2015 11:03:37

Xavier Ordoquy
Administrateur
Lieu : Puteaux, France
Inscription : 12-10-2011
Messages : 312
Site Web

Re : Amélioration de slugify

Habituellement, je construis le slug dans le save du model.

Hors ligne

#3 12-01-2015 17:29:45

Ennicolem
Membre
Inscription : 13-11-2014
Messages : 8
Site Web

Re : Amélioration de slugify

Bonsoir,

Merci pour ta réponse. N'est-ce contraire au principe de réutilisation que de faire ainsi ?
Si je dois réécrire à chaque save, cela fait le même code, écrit en 10 ou 15 endroits différents. N'y-a-t-il pas une solution pour centraliser la fonction en 1 endroit ?

Hors ligne

#4 14-01-2015 17:03:38

Xavier Ordoquy
Administrateur
Lieu : Puteaux, France
Inscription : 12-10-2011
Messages : 312
Site Web

Re : Amélioration de slugify

En faisant une classe qui ne fait que ça et en l'ajoutant à l'héritage de tes modèles si tu préfères.

Hors ligne

Pied de page des forums