django_friendlyurls est une application Django vous permet de créer des URL qui renvoient directement vues.
Il n'y a aucune redirection 302.
Le cas d'utilisation la plus courante est que vous avez des URL qui renvoient des profils d'utilisateurs tels que
http://www.example.com/user/1
URL conviviales vous permettent de créer une URL afin que l'utilisateur peut également être consulté en allant sur:
http://www.example.com/jeff
L'essentiel est que la barre d'adresse dans le navigateur ne change pas http://www.example.com/user/1
Le serveur Web renvoie le même document HTML comme http://www.example.com/user/1
Débit
L'application recherche la chaîne 'Jeff' Se il trouve une correspondance url amicale il va lire le absolute_path et tenter de le résoudre en mettant à travers l'URL résolveur une 2ème fois.
Se il trouve une résolution, il sera de retour ce point de vue.
Utilisation
Voici un exemple de la façon de mettre en œuvre friendly_urls pour un utilisateur:
Je ai mis cela dans models.py:
de django.contrib.contenttypes importer générique
de friendlyurls importation URLMapping
de django.contrib.auth.models importation utilisateur
def get_absolute_url (auto):
& Nbsp; retourner u '/ user /% s'% self.id
User.add_to_class (friendly_urls '', generic.GenericRelation (URLMapping))
User.get_absolute_url = get_absolute_url
Ce essentiellement singe patches le modèle de l'utilisateur d'ajouter un champ. Vous pouvez ensuite faire
user = User.objects.get (pk = 1)
user.friendly_urls.all ()
Cette obtiendrez une liste de toutes les urls sympathiques.
Vous ne devriez pas avoir à patch singe tous les modèles.
Problèmes / Questions
Ne oubliez pas de lancer syncdb parce friendlyurls crée une table pour stocker les mappages d'URL.
Paramètres supplémentaires
FRIENDLYURLS_IGNORE_CASE - Définir à True si vous voulez ignorer le cas en essayant de trouver un chemin. Par défaut: False
Exigences :
- Python
- Django
Commentaires non trouvées