Message exception

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
from django.http import HttpResponseRedirect

class HttpMessageMiddleware(object):
    def process_exception(self, request, exception):
        if request.user.is_authenticated():
            request.user.message_set.create(message=unicode(exception))
            return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/'))

class HttpMessage(Exception):
    pass

More like this

  1. PermanentRedirectMiddleware by marinho 4 years, 10 months ago
  2. View decorator to convert DoesNotExist (ObjectDoesNotExist) exceptions into Http404 exceptions by jammycakes 3 years, 8 months ago
  3. A custom 500 handler which is AJAX-aware by mallipeddi 5 years, 3 months ago
  4. Cookie based flash errors and notices (a la Rails) by alexk 4 years, 8 months ago
  5. Middleware to move tags <script> to the bottom by marinho 2 years, 10 months ago

Comments

amitu (on October 15, 2008):

It can go in infinite loop. May be some query string parameter can be used to circumvent that.

#

guettli (on October 30, 2008):

This recipe catches all errors. "except HttpMessage" is missing in process_exception().

#

(Forgotten your password?)