From dadfca08c0db567ce33284aaa8eb388cf667a836 Mon Sep 17 00:00:00 2001 From: Robin Munn Date: Wed, 8 Nov 2006 04:50:01 +0000 Subject: sqlalchemy: Merged revisions 3918 to 4053 from trunk. git-svn-id: http://code.djangoproject.com/svn/django/branches/sqlalchemy@4054 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- django/views/debug.py | 2 +- django/views/generic/simple.py | 12 +++++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) (limited to 'django/views') diff --git a/django/views/debug.py b/django/views/debug.py index a7f44d17b3..77b6c2fac2 100644 --- a/django/views/debug.py +++ b/django/views/debug.py @@ -75,7 +75,7 @@ def technical_500_response(request, exc_type, exc_value, tb): loader_debug_info = [] for loader in template_source_loaders: try: - source_list_func = getattr(__import__(loader.__module__, '', '', ['get_template_sources']), 'get_template_sources') + source_list_func = getattr(__import__(loader.__module__, {}, {}, ['get_template_sources']), 'get_template_sources') # NOTE: This assumes exc_value is the name of the template that # the loader attempted to load. template_list = [{'name': t, 'exists': os.path.exists(t)} \ diff --git a/django/views/generic/simple.py b/django/views/generic/simple.py index 4571ef8605..355bd25ef8 100644 --- a/django/views/generic/simple.py +++ b/django/views/generic/simple.py @@ -2,12 +2,18 @@ from django.shortcuts import render_to_response from django.template import RequestContext from django.http import HttpResponse, HttpResponsePermanentRedirect, HttpResponseGone -def direct_to_template(request, template, **kwargs): +def direct_to_template(request, template, extra_context={}, **kwargs): """ Render a given template with any extra URL parameters in the context as ``{{ params }}``. """ - return render_to_response(template, {'params' : kwargs}, context_instance=RequestContext(request)) + dictionary = {'params': kwargs} + for key, value in extra_context.items(): + if callable(value): + dictionary[key] = value() + else: + dictionary[key] = value + return render_to_response(template, dictionary, context_instance=RequestContext(request)) def redirect_to(request, url, **kwargs): """ @@ -18,7 +24,7 @@ def redirect_to(request, url, **kwargs): ``/foo//`` to ``/bar//``, you could use the following URLconf:: urlpatterns = patterns('', - ('^foo/(?p\d+)/$', 'django.views.generic.simple.redirect_to', {'url' : '/bar/%(id)s/'}), + ('^foo/(?P\d+)/$', 'django.views.generic.simple.redirect_to', {'url' : '/bar/%(id)s/'}), ) If the given url is ``None``, a HttpResponseGone (410) will be issued. -- cgit v1.3