Comment gérez-vous les URL hiérarchiques dans Django? Des meilleures pratiques pour cela? Par exemple. Si j'avais une URL comme /blog/category1/category2/myblogentry
(en utilisant par exemple django-mptt), voulez-vous faire un peu de vérification auparavant dans urls.py
ou donner le chemin complet à une vue, qu'elle vérifie chaque partie si c'est une catégorie valide, etc. Cela ne semble pas si difficile, mais juste curieux si quelqu'un peut recommander quelques meilleures pratiques ou peut montrer quelques bonnes (génériques) des solutions?Django: URL hiérarchiques
Répondre
Je crains qu'il n'y ait pas de réponse unique à votre question. Le problème est qu'indiquer à quoi la hiérarchie ressemble au niveau de l'URL regroupe trop de logique avec elle.
J'ai trouvé utile pour les décorateurs d'utilisateur. Par exemple, dans votre cas, vous pouvez écrire un décorateur qui vérifie la santé mentale des catégories, et ne fait passer que la dernière catégorie dans la vue. Quelque chose comme un décorateur qui peut prendre une fonction avec cette signature:
f(request, cat1, catN..., slug)
que chaque catégorie Vérification est en effet un parent à un autre, et de transmettre le point de vue de la catégorie vérifiée finale.
@validate_category_hierarchy
def post_in_category(request, category, slug):
Si vous avez vraiment besoin d'être extensible, le décorateur peut faire un peu d'introspection et de faire quelques suppositions (par exemple, comment l'arbre peut aller en profondeur, quels sont les autres paramètres comme, etc.).
Ensuite, tout ce que vous avez à faire est d'écrire vos confs d'URL avec soin, afin que le décorateur obtienne les paramètres en bonne forme. passer
c'est http://djangosnippets.org/snippets/362/ aussi utile.Il est permis de résoudre la vérification si l'URL correspond sans décorateurs.
- 1. Django: stocker des données hiérarchiques
- 2. Django Middleware + URL
- 3. Django + NGINX URL Problème
- 4. Django URL correspondant
- 5. Django URL regex question
- 6. django url regex
- 7. Django 0.96 et url
- 8. problème Django url
- 9. Regex Url conf Django
- 10. Django-extjs Url Data
- 11. Analyser les URLs hiérarchiques
- 12. problème url relatif Django de
- 13. modèle url django pour% 20
- 14. performance de tag django url
- 15. Django - problème avec {% url facebook_xd_receiver%}
- 16. url django - problème de lien
- 17. django full url dans get_absolute_url
- 18. Django url tag paramètres multiples
- 19. django accès local test url
- 20. Reg Ex Django Url Conf
- 21. Requêtes hiérarchiques dans LINQ
- 22. Données hiérarchiques dans StringTemplate
- 23. Afficher les données hiérarchiques
- 24. Données hiérarchiques NHibernate courantes
- 25. ListView Données hiérarchiques - ASP.Net
- 26. Django URL Conf renvoie une "URL actuelle" incorrecte
- 27. La méthode url d'ImageField renvoie une valeur non Url - Django
- 28. Django: URL nommées/même modèle, différente URL nommée
- 29. Les URL d'administration de Django renvoient INVALID REQUEST! - Django
- 30. Django ne reconnaît pas les URL d'admin django