Dans Django, comment puis-je faire une simple redirection directement à partir de urls.py? Naturellement, je suis un mec, en favorisant le principe SEC, donc je voudrais obtenir la cible basée sur il est nommé modèle d'url, plutôt que le codage en dur l'adresse url.
Réponses
Trop de publicités?Si vous êtes sur Django 1.4 ou 1.5, vous pouvez faire ceci:
from django.core.urlresolvers import reverse_lazy
from django.views.generic import RedirectView
urlpatterns = patterns('',
url(r'^some-page/$', RedirectView.as_view(url=reverse_lazy('my_named_pattern'))),
...
Si vous êtes sur Django 1.6 ou supérieure, vous pouvez faire ceci:
from django.views.generic import RedirectView
urlpatterns = patterns('',
url(r'^some-page/$', RedirectView.as_view(pattern_name='my_named_pattern')),
...
kravietz
Points
908
J'aimerais utiliser la redirection de raccourci - propre, élégant et souple (voir la doc):
from django.shortcuts import redirect
...
url(r'^some-page/$', redirect('my_named_pattern'))