Activité-Paranormale


Red devil Information

Publicité

Rechercher

Développement

Apportez vos talents de codeur !

Développer

Visiteurs

Citations

Random quotation
C'est l'une des plus sûres actions de la mort que de nous faire éprouver l'irrémédiable.
(​Gilles Archambault)

Événements - 3 juillet

Event Calendrier

Validation

Valid XHTML 1.0 Transitional Valid CSS!

Crystal ballTour de magie

AbductionPython - Générer des slugs pour vos URL

Pour des besoins de référencement, il devient indispensable de générer de belles URL.Voici un petit script Python (compatible avec la version 3.*) pour sluggifier vos URLs :

_punct_re = re.compile(r'[\t !’"#$%&\'()*\-/<=>?@\[\\\]^_`{|},.]+')

def slugify(text, delim=u'-'):
	"""Generates an ASCII-only slug."""
	result = []
	for word in _punct_re.split(text.lower()):
		result.extend(unidecode(word).split())
	return str(delim.join(result))

On passe comme paramètre le titre d'un article (par exemple) que l'on veut voir apparaître dans l'URL. Ce script va remplacer tous les caractères spéciaux (accents, apostrophe,...) par de simples tirets et mettre la chaîne de caractères en minuscule.

Mettre la base de données à jour :

Si votre site est déjà lancé et que vous souhaitez stocker vos URLs dans votre base de données, vous pourrez utiliser le script suivant pour la mettre à jour :

from sqlalchemy import create_engine

engine = create_engine("postgresql+psycopg2://postgres:password@localhost:5432/flask")
connection = engine.connect()
result = connection.execute("SELECT * FROM article")

for row in result:
	query = "UPDATE article SET slug = '" + slugify(row['title']) + "' WHERE id = " + str(row['id'])
	connection.execute(query)
	print(query)

Post-scriptum :

Ce script s'inspire de la page "Generating slug".



Python


Publicité