Internet Explorer Redirect Decorator

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
def no_ie(redirect):
    """
    Protects a view from the terror that is Microsoft Internet Explorer
    by redirecting the request to 'redirect'.
    
    Usage:
    
    @no_ie('/ie-compatible-page/')
    def my view(request):
       ...
    
    """
    def view_wrapper(view):
        def dec(request, *args, **kwargs):
            if request.META['HTTP_USER_AGENT'].find('MSIE') > 0:
                return HttpResponseRedirect(redirect)
            return view(request, *args, **kwargs)
        return dec
    return view_wrapper

More like this

  1. Never cache a group of URLs by ChipX86 6 years, 8 months ago
  2. View Redirect Decorators by bryanpieper 3 years, 9 months ago
  3. Avoid IE Brokenness When using Vary and Attachments by axiak 7 years ago
  4. login_required decorator that doesn't redirect by brutasse 3 years, 2 months ago
  5. Decorator to ease dynamic redirections in Django by david_bgk 5 years, 2 months ago

Comments

(Forgotten your password?)