Login

Decorator to ease dynamic redirections in Django

Author:
david_bgk
Posted:
February 12, 2009
Language:
Python
Version:
1.0
Score:
3 (after 3 ratings)

I often use it so I hope it helps!

Usage:

urlpatterns = patterns('',
  url(r'^nav/$', redirect('/navigation/')),
  url(r'^search/(?P<category_name>\w+)/$',
    redirect('/documents/%(category_name)s/')),
  and so on...
)

It keeps GET arguments too.

1
2
3
4
5
6
7
8
from django.conf.urls.defaults import *
from django.http import HttpResponsePermanentRedirect

def redirect(url):
    def inner(request, **args):
        redirect_to = '%s?%s' % (url % args, request.GET.urlencode())
        return HttpResponsePermanentRedirect(redirect_to)
    return inner

More like this

  1. Template tag - list punctuation for a list of items by shapiromatron 11 months, 2 weeks ago
  2. JSONRequestMiddleware adds a .json() method to your HttpRequests by cdcarter 11 months, 3 weeks ago
  3. Serializer factory with Django Rest Framework by julio 1 year, 6 months ago
  4. Image compression before saving the new model / work with JPG, PNG by Schleidens 1 year, 7 months ago
  5. Help text hyperlinks by sa2812 1 year, 8 months ago

Comments

Please login first before commenting.