Login

Expose the 404/500 views during development

Author:
andi
Posted:
August 13, 2008
Language:
Python
Version:
.96
Tags:
development debug urlsconf
Score:
-4 (after 6 ratings)

A simple addition for the urls.py that exposes the 404/500 templates during development. This way you can test how those look. They're mounted under /404/ and /505/ respectively.

Add this at the bottom of your main urls.py.

1
2
3
4
5
6
7
# serve media in development mode and expose the 400/500 docs for testing
if settings.DEVELOPMENT_MODE:
    urlpatterns += patterns('', 
        url(r"%s(?P<path>.*)$" % settings.MEDIA_URL[1:], 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}),
        url(r'^500/$', 'django.views.generic.simple.direct_to_template', {'template': '500.html'}),
        url(r'^404/$', 'django.views.generic.simple.direct_to_template', {'template': '404.html'}),
    )

More like this

  1. A custom 500 handler which is AJAX-aware by mallipeddi 7 years, 1 month ago
  2. Message exception by marinho 6 years, 5 months ago
  3. Decorator for enabling views only when developing by damd 4 years, 7 months ago
  4. lazy url reverse() by guettli 7 years, 3 months ago
  5. Configurable defaults for contrib.sites default Site during syncdb by chrischambers 3 years, 6 months ago

Comments

carljm (on August 13, 2008):

This doesn't really work for the 500 template. In testing with this urlconf, your 500 template will be rendered with context from all your context processors. In a real 500 error, Django does not make that context available and your 500 template could look very different (if, say, you depend on media_url to get media).

And generating a real 404 is never very hard to do.

#

Please login first before commenting.